summaryrefslogtreecommitdiff
path: root/Src/Zle/complete.c
diff options
context:
space:
mode:
Diffstat (limited to 'Src/Zle/complete.c')
-rw-r--r--Src/Zle/complete.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/Src/Zle/complete.c b/Src/Zle/complete.c
index 49b338f29..68bdf2332 100644
--- a/Src/Zle/complete.c
+++ b/Src/Zle/complete.c
@@ -896,14 +896,12 @@ do_comp_vars(int test, int na, char *sa, int nb, char *sb, int mod)
int i, l = arrlen(compwords), t = 0, b = 0, e = l - 1;
Patprog pp;
- queue_signals(); /* Protect PAT_STATIC */
-
i = compcurrent - 1;
if (i < 0 || i >= l)
return 0;
singsub(&sa);
- pp = patcompile(sa, PAT_STATIC, NULL);
+ pp = patcompile(sa, PAT_HEAPDUP, NULL);
for (i--, p = compwords + i; i >= 0; p--, i--) {
if (pattry(pp, *p)) {
@@ -932,9 +930,6 @@ do_comp_vars(int test, int na, char *sa, int nb, char *sb, int mod)
t = 0;
if (t && mod)
restrict_range(b, e);
-
- unqueue_signals();
-
return t;
}
case CVT_PRENUM:
@@ -957,12 +952,10 @@ do_comp_vars(int test, int na, char *sa, int nb, char *sb, int mod)
{
Patprog pp;
- queue_signals(); /* Protect PAT_STATIC */
-
if (!na)
return 0;
- if (!(pp = patcompile(sa, PAT_STATIC, 0)))
+ if (!(pp = patcompile(sa, PAT_HEAPDUP, 0)))
return 0;
if (test == CVT_PREPAT) {
@@ -1043,9 +1036,6 @@ do_comp_vars(int test, int na, char *sa, int nb, char *sb, int mod)
if (mod)
ignore_suffix(ol - (p - compsuffix));
}
-
- unqueue_signals();
-
return 1;
}
}