[gnumeric] Parser: fix ABR.



commit 9ea4b4b0570cff75700712587ebaebc18a23b98b
Author: Morten Welinder <terra gnome org>
Date:   Sat Jan 23 21:49:59 2016 -0500

    Parser: fix ABR.

 ChangeLog    |    5 +++++
 NEWS         |    1 +
 src/parser.y |    2 ++
 3 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index ae92693..d8708a7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2016-01-23  Morten Welinder  <terra gnome org>
+
+       * src/parser.y (yylex): Be careful about overflowing numeric
+       token.  Fixes #761023.
+
 2016-01-20  Morten Welinder  <terra gnome org>
 
        * src/complex.h: Namespace.  Mostly for macros.
diff --git a/NEWS b/NEWS
index 5508d37..f30b9ab 100644
--- a/NEWS
+++ b/NEWS
@@ -15,6 +15,7 @@ Morten:
        * Fuzzed file fixes.  [#760046] [#760085] [#760087] [#760089]
          [#760043] [#760103] [#760102] [#760101] [#760105] [#760106]
          [#760104] [#760229] [#760231] [#760232] [#760544] [#760545]
+         [#761023]
        * Fix R.DBINOM extreme-value case.  [#760230]
        * New function AGM.
        * Fix canvas problem leaving grab in place.  [#760639]
diff --git a/src/parser.y b/src/parser.y
index a77e912..325043f 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -1260,6 +1260,8 @@ yylex (void)
                        state->ptr = g_utf8_next_char (state->ptr);
                } while (g_unichar_isdigit (c));
                is_number = TRUE;
+               if (c == 0)
+                       state->ptr--;
        }
 
        if (is_number) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]