[gnumeric] .gnumeric: fuzzed file fix re sheet objects.



commit 6e763923ade27b3fa72c6bc9ce4b4c03e5c12735
Author: Morten Welinder <terra gnome org>
Date:   Thu Jun 18 10:45:19 2015 -0400

    .gnumeric: fuzzed file fix re sheet objects.

 ChangeLog          |    5 +++++
 NEWS               |    1 +
 src/xml-sax-read.c |    2 +-
 3 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index c608b98..c15f6b0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-06-18  Morten Welinder  <terra gnome org>
+
+       * src/xml-sax-read.c (xml_sax_read_obj): Only allow type names
+       specifying types derived from sheet objects.  Fixes #751126.
+
 2015-06-16  Morten Welinder  <terra gnome org>
 
        * src/xml-sax-read.c (handle_delayed_names): Check for circularity
diff --git a/NEWS b/NEWS
index f16441f..a0369f2 100644
--- a/NEWS
+++ b/NEWS
@@ -26,6 +26,7 @@ Morten:
          [#749236] [#749240] [#749234] [#749235] [#749271] [#749270]
          [#749424] [#749917] [#749919] [#750043] [#750044] [#750046]
          [#750811] [#750810] [#750857] [#750864] [#750862] [#750858]
+         [#751126]
        * Make solver check linearity of model.
        * Fix xls saving of marker style.  [#749185]
        * Make compilation with clang work again.  [#749138]
diff --git a/src/xml-sax-read.c b/src/xml-sax-read.c
index b042870..0d8edd8 100644
--- a/src/xml-sax-read.c
+++ b/src/xml-sax-read.c
@@ -2371,7 +2371,7 @@ xml_sax_read_obj (GsfXMLIn *xin, gboolean needs_cleanup,
        else {
                GType type = g_type_from_name (type_name);
 
-               if (type == 0) {
+               if (type == 0 || !g_type_is_a (type, GNM_SO_TYPE)) {
                        char *str = g_strdup_printf (_("Unsupported object type '%s'"),
                                                     type_name);
                        go_io_warning_unsupported_feature (state->context, str);


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