summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--Src/Zle/compmatch.c20
2 files changed, 23 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 115ce11eb..4df3d3403 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-07-06 Peter Stephenson <pws@csr.com>
+
+ * 21402: Src/Zle/compmatch.c: Fix crash completing the set
+ of files AIWebKitMessageViewController.m,
+ AIWebKitMessageViewPlugin.m, AIWebkitMessageViewStyle.m
+ with case-insensitive matching.
+
2005-07-03 Doug Kearns <djkea2@gus.gscit.monash.edu.au>
* unposted: Completion/Unix/Command/_w3m: add missing compset -S calls
diff --git a/Src/Zle/compmatch.c b/Src/Zle/compmatch.c
index 90823c9f7..7054feb6d 100644
--- a/Src/Zle/compmatch.c
+++ b/Src/Zle/compmatch.c
@@ -803,14 +803,26 @@ match_str(char *l, char *w, Brinfo *bpp, int bc, int *rwlp,
/* Probably add the matched strings. */
if (!test) {
if (sfx)
- add_match_str(NULL, NULL, w, ow - w, sfx);
+ {
+ if (ow >= w)
+ add_match_str(NULL, NULL, w, ow - w, sfx);
+ }
else
- add_match_str(NULL, NULL, ow, w - ow, sfx);
+ {
+ if (w >= ow)
+ add_match_str(NULL, NULL, ow, w - ow, sfx);
+ }
add_match_str(mp, tl, tw, mp->wlen, sfx);
if (sfx)
- add_match_sub(NULL, NULL, 0, w, ow - w);
+ {
+ if (ow >= w)
+ add_match_sub(NULL, NULL, 0, w, ow - w);
+ }
else
- add_match_sub(NULL, NULL, 0, ow, w - ow);
+ {
+ if (w >= ow)
+ add_match_sub(NULL, NULL, 0, ow, w - ow);
+ }
add_match_sub(mp, tl, mp->llen, tw, mp->wlen);
}
if (sfx) {