[gnumeric] Parser: fix crash on ['



commit ddd96433413b73f7ec04a6d570f3fdcb7f53056b
Author: Morten Welinder <terra gnome org>
Date:   Sat Jul 30 06:06:33 2011 -0400

    Parser: fix crash on ['

 ChangeLog    |    4 ++++
 NEWS         |    1 +
 src/parser.y |    4 ++--
 3 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 2427dd8..246e9ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2011-07-30  Morten Welinder  <terra gnome org>
+
+	* src/parser.y (yylex): Fix parsing crash.  [Redhat #726860]
+
 2011-07-28 Andreas J. Guelzow <aguelzow pyrshep ca>
 
 	* src/print-cell.c (print_cell_gtk): implement printing of errors as
diff --git a/NEWS b/NEWS
index 79f465c..76b3043 100644
--- a/NEWS
+++ b/NEWS
@@ -21,6 +21,7 @@ Andreas:
 
 Morten:
 	* Fix --with-gnome compilation:  [#652802]
+	* Fix parsing crash.  [Redhat #726860]
 
 --------------------------------------------------------------------------
 Gnumeric 1.10.16
diff --git a/src/parser.y b/src/parser.y
index d41d517..90b1ef7 100644
--- a/src/parser.y
+++ b/src/parser.y
@@ -1417,10 +1417,10 @@ yylex (void)
 			}
 		}
 
-		while (g_unichar_isspace (g_utf8_get_char (p)))
+		while (p && g_unichar_isspace (g_utf8_get_char (p)))
 			p = g_utf8_next_char (p);
 
-		if (s->len == 0 || p[0] != ']') {
+		if (s->len == 0 || !p || p[0] != ']') {
 			g_string_free (s, TRUE);
 			break;
 		}



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