diff -ru libgsf-1.14.19/gsf/gsf-msole-utils.c libgsf-1.14.19.foo/gsf/gsf-msole-utils.c
--- libgsf-1.14.19/gsf/gsf-msole-utils.c 2010-08-29 01:23:25.000000000 +0100
+++ libgsf-1.14.19.foo/gsf/gsf-msole-utils.c 2010-11-09 16:31:16.000000000 +0000
@@ -894,8 +894,13 @@
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 ("error: %s", "Corrupt document");
+ g_warning ("unknown error parsing vt_cf");
g_free (res);
res = NULL;
}