summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@zsh.org>2015-06-22 17:35:38 +0100
committerPeter Stephenson <pws@zsh.org>2015-06-22 17:35:38 +0100
commit7d588bc158c24d4e60b579d60b76cde55225b01c (patch)
tree8028d2181b6dc5fa6176fc8e2da14a4cbd054418
parentea0f612c3ad8fa1b4dea2245ce107e751c8e06d6 (diff)
downloadzsh-7d588bc158c24d4e60b579d60b76cde55225b01c.tar.gz
zsh-7d588bc158c24d4e60b579d60b76cde55225b01c.zip
33566: regex module fix for unmatched parentheses
-rw-r--r--ChangeLog5
-rw-r--r--Src/Modules/regex.c5
2 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 5d8682ec8..c92a911ab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-06-22 Peter Stephenson <p.stephenson@samsung.com>
+
+ * 35566: Src/Modules/regex.c: didn't handle faile
+ parenthesis matches.
+
2015-06-22 Mikael Magnusson <mikachu@gmail.com>
* 35554: Doc/Zsh/contrib.yo: Document narrow-to-region -l and -r.
diff --git a/Src/Modules/regex.c b/Src/Modules/regex.c
index 94f523f32..16cc77f30 100644
--- a/Src/Modules/regex.c
+++ b/Src/Modules/regex.c
@@ -155,6 +155,11 @@ zcond_regex_match(char **a, int id)
++n, ++m, ++bptr, ++eptr)
{
char buf[DIGBUFSIZE];
+ if (m->rm_so < 0 || m->rm_eo < 0) {
+ *bptr = ztrdup("-1");
+ *eptr = ztrdup("-1");
+ continue;
+ }
ptr = lhstr;
leftlen = m->rm_so;
offs = 0;