summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Shahaf <d.s@daniel.shahaf.name>2015-11-25 01:46:55 +0000
committerDaniel Shahaf <d.s@daniel.shahaf.name>2015-11-27 07:26:38 +0000
commit2ab41d508d453be2305b898325a9a87f00aaebda (patch)
tree4e668f4b698d0e253073544f2bdc6fa0ca95dd06
parent3d962aacd5c86d18ad379eaca217bb53d0615a33 (diff)
downloadzsh-2ab41d508d453be2305b898325a9a87f00aaebda.tar.gz
zsh-2ab41d508d453be2305b898325a9a87f00aaebda.zip
37215: _regex_words: Don't add mismatched parentheses
I ran into this in the wild¹, it manifested as the following error message: zregexparse:4: not enough regex arguments ¹ https://bug.tasktools.org/browse/TW-1729
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Base/Utility/_regex_words8
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a1034cfcc..3fabfc5e3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-27 Daniel Shahaf <d.s@daniel.shahaf.name>
+
+ * 37215: Completion/Base/Utility/_regex_words: _regex_words:
+ Don't add mismatched parentheses
+
2015-11-26 Barton E. Schaefer <schaefer@zsh.org>
* 37229: Src/Modules/param_private.c, Test/V10private.ztst: non-
diff --git a/Completion/Base/Utility/_regex_words b/Completion/Base/Utility/_regex_words
index 77ba197a4..62c2491bb 100644
--- a/Completion/Base/Utility/_regex_words
+++ b/Completion/Base/Utility/_regex_words
@@ -20,7 +20,13 @@ local tag=$1
local desc=$2
shift 2
-reply=(\()
+if (( $# )); then
+ reply=(\()
+else
+ # ### Is this likely to happen in callers? Should we warn?
+ reply=()
+ return
+fi
integer i
local -a wds