From f04b4c74a70280de871b3487558772045d498a27 Mon Sep 17 00:00:00 2001 From: Sven Wischnowsky Date: Thu, 15 Jun 2000 09:41:47 +0000 Subject: more security in completion matching (11924) --- ChangeLog | 2 ++ Src/Zle/compmatch.c | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 40b7bc380..049fdbf21 100644 --- a/ChangeLog +++ b/ChangeLog @@ -9,6 +9,8 @@ 2000-06-15 Sven Wischnowsky + * 11924: Src/Zle/compmatch.c: more security in completion matching + * 11915: Completion/Core/_files, Doc/Zsh/compsys.yo: make _files try each pattern only once (and stop after `*') diff --git a/Src/Zle/compmatch.c b/Src/Zle/compmatch.c index 8cdfddede..180dce5df 100644 --- a/Src/Zle/compmatch.c +++ b/Src/Zle/compmatch.c @@ -488,7 +488,7 @@ match_str(char *l, char *w, Brinfo *bpp, int bc, int *rwlp, */ bslash = 0; - if (test && !sfx && + if (test && !sfx && lw && (l[ind] == w[ind] || (bslash = (lw > 1 && w[ind] == '\\' && (ind ? (w[0] == l[0]) : (w[1] == l[0])))))) { @@ -803,7 +803,7 @@ match_str(char *l, char *w, Brinfo *bpp, int bc, int *rwlp, /* Same code as at the beginning, used in top-level calls. */ bslash = 0; - if ((!test || sfx) && + if ((!test || sfx) && lw && (l[ind] == w[ind] || (bslash = (lw > 1 && w[ind] == '\\' && (ind ? (w[0] == l[0]) : (w[1] == l[0])))))) { -- cgit 1.4.1