aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--io.c2
-rw-r--r--pc/Makefile.tst7
-rw-r--r--test/ChangeLog5
-rw-r--r--test/Makefile.am5
-rw-r--r--test/Makefile.in10
-rw-r--r--test/Maketests5
7 files changed, 37 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index db7c5ad0..0a8316f5 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -4,6 +4,12 @@
format modifiers. Add support for three more letters. Thanks to
Arkadiusz Drabczyk <arkadiusz@drabczyk.org> for the report.
+ Unrelated:
+
+ * io.c (rsnullscan): Adjust loop test to get to end of string
+ when re match is null string. Thanks to Ed Morton
+ <mortoneccc@comcast.net> for the report.
+
2020-12-26 Arnold D. Robbins <arnold@skeeve.com>
* NEWS: Updated.
@@ -380,7 +386,7 @@
2020-06-08 Arnold D. Robbins <arnold@skeeve.com>
* awkgram.y: Fix `print $"2"' case. Thanks to Ed Morton
- Morton <mortoneccc@comcast.net> for the report.
+ <mortoneccc@comcast.net> for the report.
Unrelated:
diff --git a/io.c b/io.c
index 2714398e..0af8ab1e 100644
--- a/io.c
+++ b/io.c
@@ -3702,7 +3702,7 @@ again:
* If still room in buffer, skip over null match
* and restart search. Otherwise, return.
*/
- if (bp + iop->scanoff < iop->dataend) {
+ if (bp + iop->scanoff <= iop->dataend) {
bp += iop->scanoff;
goto again;
}
diff --git a/pc/Makefile.tst b/pc/Makefile.tst
index 3a89c1c4..5dbfb658 100644
--- a/pc/Makefile.tst
+++ b/pc/Makefile.tst
@@ -172,7 +172,7 @@ BASIC_TESTS = \
printf1 printfchar prmarscl prmreuse prt1eval prtoeval \
rand randtest range1 range2 readbuf rebrackloc rebt8b1 rebuild redfilnm regeq \
regexpbrack regexpbrack2 regexprange regrange reindops reparse resplit \
- rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnulw \
+ rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnullre rsnulw \
rstest1 rstest2 rstest3 rstest4 rstest5 rswhite \
scalar sclforin sclifin setrec0 setrec1 \
sigpipe1 sortempty sortglos spacere splitargv splitarr \
@@ -2209,6 +2209,11 @@ rsnul1nl:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+rsnullre:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
rsnulw:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/ChangeLog b/test/ChangeLog
index f465ab09..456af38a 100644
--- a/test/ChangeLog
+++ b/test/ChangeLog
@@ -3,6 +3,11 @@
* Makefile.am (EXTRA_DIST): modifiers, new test.
* modifiers.sh, modifiers.ok: New files.
+ Unrelated:
+
+ * Makefile.am (EXTRA_DIST): rsnullre, new test.
+ * rsnullre.awk, rsnullre.in, rsnullre.ok: New files.
+
2020-12-26 Arnold D. Robbins <arnold@skeeve.com>
* Makefile.am (EXTRA_DIST): fpat9, new test.
diff --git a/test/Makefile.am b/test/Makefile.am
index 8278a547..09efe0eb 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -1100,6 +1100,9 @@ EXTRA_DIST = \
rsnul1nl.ok \
rsnulbig.ok \
rsnulbig2.ok \
+ rsnullre.awk \
+ rsnullre.in \
+ rsnullre.ok \
rsnulw.awk \
rsnulw.in \
rsnulw.ok \
@@ -1404,7 +1407,7 @@ BASIC_TESTS = \
printf1 printfchar prmarscl prmreuse prt1eval prtoeval \
rand randtest range1 range2 readbuf rebrackloc rebt8b1 rebuild redfilnm regeq \
regexpbrack regexpbrack2 regexprange regrange reindops reparse resplit \
- rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnulw \
+ rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnullre rsnulw \
rstest1 rstest2 rstest3 rstest4 rstest5 rswhite \
scalar sclforin sclifin setrec0 setrec1 \
sigpipe1 sortempty sortglos spacere splitargv splitarr \
diff --git a/test/Makefile.in b/test/Makefile.in
index 8c2a8fd4..54d4a114 100644
--- a/test/Makefile.in
+++ b/test/Makefile.in
@@ -1363,6 +1363,9 @@ EXTRA_DIST = \
rsnul1nl.ok \
rsnulbig.ok \
rsnulbig2.ok \
+ rsnullre.awk \
+ rsnullre.in \
+ rsnullre.ok \
rsnulw.awk \
rsnulw.in \
rsnulw.ok \
@@ -1667,7 +1670,7 @@ BASIC_TESTS = \
printf1 printfchar prmarscl prmreuse prt1eval prtoeval \
rand randtest range1 range2 readbuf rebrackloc rebt8b1 rebuild redfilnm regeq \
regexpbrack regexpbrack2 regexprange regrange reindops reparse resplit \
- rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnulw \
+ rri1 rs rscompat rsnul1nl rsnulbig rsnulbig2 rsnullre rsnulw \
rstest1 rstest2 rstest3 rstest4 rstest5 rswhite \
scalar sclforin sclifin setrec0 setrec1 \
sigpipe1 sortempty sortglos spacere splitargv splitarr \
@@ -3886,6 +3889,11 @@ rsnul1nl:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+rsnullre:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
rsnulw:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
diff --git a/test/Maketests b/test/Maketests
index 4e6a705f..87b141b4 100644
--- a/test/Maketests
+++ b/test/Maketests
@@ -965,6 +965,11 @@ rsnul1nl:
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
@-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+rsnullre:
+ @echo $@
+ @AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@
+ @-$(CMP) "$(srcdir)"/$@.ok _$@ && rm -f _$@
+
rsnulw:
@echo $@
@AWKPATH="$(srcdir)" $(AWK) -f $@.awk < "$(srcdir)"/$@.in >_$@ 2>&1 || echo EXIT CODE: $$? >>_$@