aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--dfa.c7
2 files changed, 9 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 0facf7a6..67b36937 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,10 @@
* interpret.h: Revert change of 2014-11-11 since it breaks
certain uses.
+ Unrelated:
+
+ * dfa.c: Sync with GNU grep.
+
2014-11-15 Arnold D. Robbins <arnold@skeeve.com>
* array.c, awk.h, awkgram.y, builtin.c, dfa.c, eval.c, field.c,
diff --git a/dfa.c b/dfa.c
index 53a8c2cc..66136ce2 100644
--- a/dfa.c
+++ b/dfa.c
@@ -3697,8 +3697,11 @@ dfassbuild (struct dfa *d)
sup->musts = NULL;
sup->charclasses = xnmalloc (sup->calloc, sizeof *sup->charclasses);
- memcpy (sup->charclasses, d->charclasses,
- d->cindex * sizeof *sup->charclasses);
+ if (d->cindex)
+ {
+ memcpy (sup->charclasses, d->charclasses,
+ d->cindex * sizeof *sup->charclasses);
+ }
sup->tokens = xnmalloc (d->tindex, 2 * sizeof *sup->tokens);
sup->talloc = d->tindex * 2;