[libgsf] ole: fix crash.



commit 19ad8304b2563536d8c453cb570b368617e586a5
Author: Morten Welinder <terra gnome org>
Date:   Wed Nov 10 12:45:24 2010 -0500

    ole: fix crash.

 ChangeLog             |    5 +++++
 NEWS                  |    3 +++
 gsf/gsf-msole-utils.c |    9 +++++++--
 3 files changed, 15 insertions(+), 2 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index fa3485a..72773ed 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2010-11-10  Morten Welinder  <terra gnome org>
+
+	* gsf/gsf-msole-utils.c (msole_prop_parse): Handle NULL error
+	message without crashing.  [#634435]  Patch by Caolan McNamara.
+
 2010-09-25  Morten Welinder <terra gnome org>
 
 	* configure.in: Post-release bump.
diff --git a/NEWS b/NEWS
index b176d56..4eb1f3c 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,8 @@
 libgsf 1.14.20
 
+Caolan McNamara:
+       * Fix msole reading crash.
+
 --------------------------------------------------------------------------
 libgsf 1.14.19
 
diff --git a/gsf/gsf-msole-utils.c b/gsf/gsf-msole-utils.c
index 28c56a9..057d18f 100644
--- a/gsf/gsf-msole-utils.c
+++ b/gsf/gsf-msole-utils.c
@@ -894,8 +894,13 @@ msole_prop_parse (GsfMSOleMetaDataSection *section,
 		error = NULL;
 		if (!parse_vt_cf (res, data, data_end, &error)) {
 			/* suck, we can't propagate the error upwards */
-			g_warning ("error: %s", error->message);
-			g_error_free (error);
+			if (error) {
+				g_warning ("error: %s", error->message);
+				g_error_free (error);
+			}
+			else {
+				g_warning ("unknown error parsing vt_cf");
+			}
 			g_free (res);
 			res = NULL;
 		}



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