about summary refs log tree commit diff
path: root/Src/hist.c
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-23 08:20:56 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-23 08:20:56 +0000
commit7f9f81f3e22a58d6a8af77f05cd05c94faf88d93 (patch)
treeea885f65d2b29f8fe5b733683333973a7e7351db /Src/hist.c
parentde2c2a89c6341adeb4e033ec8877d67eb0c2110c (diff)
downloadzsh-7f9f81f3e22a58d6a8af77f05cd05c94faf88d93.tar.gz
zsh-7f9f81f3e22a58d6a8af77f05cd05c94faf88d93.tar.xz
zsh-7f9f81f3e22a58d6a8af77f05cd05c94faf88d93.zip
save and restore more variables in bufferwords(); move gotword() into core (11523)
Diffstat (limited to 'Src/hist.c')
-rw-r--r--Src/hist.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/Src/hist.c b/Src/hist.c
index 9f35c4cd2..a3d8fa7ef 100644
--- a/Src/hist.c
+++ b/Src/hist.c
@@ -2059,6 +2059,7 @@ mod_export LinkList
 bufferwords(LinkList list, char *buf, int *index)
 {
     int num = 0, cur = -1, got = 0, ne = noerrs, ocs = cs;
+    int owb = wb, owe = we, oadx = addedx, ozp = zleparse;
     char *p;
 
     if (!list)
@@ -2131,10 +2132,14 @@ bufferwords(LinkList list, char *buf, int *index)
     noaliases = 0;
     strinend();
     inpop();
-    errflag = zleparse = 0;
+    errflag = 0;
+    zleparse = ozp;
     noerrs = ne;
     lexrestore();
     cs = ocs;
+    wb = owb;
+    we = owe;
+    addedx = oadx;
 
     if (index)
 	*index = cur;