summary refs log tree commit diff stats
path: root/lib/impure/re.nim
diff options
context:
space:
mode:
authordef <dennis@felsin9.de>2015-04-09 17:22:44 +0200
committerdef <dennis@felsin9.de>2015-04-09 17:22:44 +0200
commit69d38f82a586923ac4954988dbb87988785b761b (patch)
treeef60b32f7b8a1a1055704de47707c666c6b5ce10 /lib/impure/re.nim
parentce0c4a8b58761b73b1d4b1979d59965771bfed5e (diff)
downloadNim-69d38f82a586923ac4954988dbb87988785b761b.tar.gz
Fix infinite loop in findAll
Diffstat (limited to 'lib/impure/re.nim')
-rw-r--r--lib/impure/re.nim1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/impure/re.nim b/lib/impure/re.nim
index 2cce6a8aa..1f99fed5d 100644
--- a/lib/impure/re.nim
+++ b/lib/impure/re.nim
@@ -231,6 +231,7 @@ iterator findAll*(s: string, pattern: Regex, start = 0): string =
     if res < 0'i32: break
     let a = rawMatches[0]
     let b = rawMatches[1]
+    if a == b and a == i: break
     yield substr(s, int(a), int(b)-1)
     i = b