From adc8c84856a3b1ad48015552681fe1e9757aa356 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Thu, 27 Dec 2001 18:06:41 +0000 Subject: [PATCH] * src/reader.c (packgram): Catch nitems overflows. --- ChangeLog | 5 +++++ NEWS | 5 +++++ src/reader.c | 4 ++++ 3 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index 254bb0bb..1d4e28e3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2001-12-27 Akim Demaille + + * src/reader.c (packgram): Catch nitems overflows. + + 2001-12-27 Akim Demaille * src/files.c, src/files.h (guard_obstack): Remove. diff --git a/NEWS b/NEWS index 9934bab3..9d6e4065 100644 --- a/NEWS +++ b/NEWS @@ -2,6 +2,11 @@ Bison News ---------- Changes in version 1.49a: + +* items overflow + Bison no longer dumps core when there are too many items, it just + dies. + Changes in version 1.30: diff --git a/src/reader.c b/src/reader.c index b5d5fac9..d1912624 100644 --- a/src/reader.c +++ b/src/reader.c @@ -1692,6 +1692,10 @@ packgram (void) int ruleno; symbol_list *p; + /* We use short to index items. */ + if (nitems >= MAXSHORT) + fatal (_("too many items (max %d)"), MAXSHORT); + ritem = XCALLOC (short, nitems + 1); rule_table = XCALLOC (rule_t, nrules) - 1; -- 2.47.2