GNOME Bugzilla – Bug 628467
(gnumeric:20529): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed
Last modified: 2010-09-01 14:37:35 UTC
Created attachment 169208 [details] sample file new gnumeric open the attached file quit
It's worse than that. I sometimes a warning on load and valgrind is unhappy during load: ==8063== Invalid read of size 1 ==8063== at 0x4028F7E: strcmp (in /usr/lib/valgrind/vgpreload_memcheck-x86-li nux.so) ==8063== by 0x4E97CD2: g_str_equal (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4E640C5: g_hash_table_lookup (in /usr/lib/libglib-2.0.so.0.2400 .1) ==8063== by 0x4324E01: load_image (go-doc.c:461) ==8063== by 0x442D507: ??? (in /usr/lib/libgsf-1.so.114.0.18) ==8063== by 0x442D649: ??? (in /usr/lib/libgsf-1.so.114.0.18) ==8063== by 0x442DC54: ??? (in /usr/lib/libgsf-1.so.114.0.18) ==8063== by 0x44B0AC7: xmlParseStartTag (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BB6DF: xmlParseElement (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BA489: xmlParseContent (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BB5CD: xmlParseElement (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BA489: xmlParseContent (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BB5CD: xmlParseElement (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x44BC5F1: xmlParseDocument (in /usr/lib/libxml2.so.2.7.7) ==8063== by 0x442EFCE: gsf_xml_in_doc_parse (in /usr/lib/libgsf-1.so.114.0.18) ==8063== by 0x4183EC3: read_file_common (xml-sax-read.c:3173) ==8063== by 0x432EB13: go_file_opener_open_real (file.c:87) ==8063== by 0x432F701: go_file_opener_open (file.c:299) ==8063== by 0x4166A00: wb_view_new_from_input (workbook-view.c:1254) ==8063== Address 0x6baaf80 is 0 bytes inside a block of size 9 free'd ==8063== at 0x4027996: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==8063== by 0x4E7B835: g_free (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x42FD6AA: go_image_set_name (go-image.c:652) ==8063== by 0x4325A2F: go_doc_add_image (go-doc.c:392) ==8063== by 0x433E2BD: gog_styled_object_document_changed (gog-styled-object.c:76) ==8063== by 0x433C0CB: gog_object_document_changed (gog-object.c:1836) ==8063== by 0x433C0F6: gog_object_document_changed (gog-object.c:1838) ==8063== by 0x433C0F6: gog_object_document_changed (gog-object.c:1838) ==8063== by 0x433C0F6: gog_object_document_changed (gog-object.c:1838) ==8063== by 0x433C0F6: gog_object_document_changed (gog-object.c:1838) ==8063== by 0x434308A: gog_graph_set_property (gog-graph.c:96) ==8063== by 0x4DE6A8A: g_object_set_valist (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4DE73B7: g_object_set (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x413B98C: sog_datas_set_sheet (sheet-object-graph.c:135) ==8063== by 0x413D836: sheet_object_graph_set_gog (sheet-object-graph.c:641) ==8063== by 0x413DBC9: sog_xml_finish (sheet-object-graph.c:396)
And the issue on exit produces this: ==8063== Invalid read of size 4 ==8063== at 0x4DE32BE: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4E63908: ??? (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4E6435A: g_hash_table_remove_all (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4E643FC: g_hash_table_destroy (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4324CCC: go_doc_finalize (go-doc.c:109) ==8063== by 0x4161325: workbook_finalize (workbook.c:161) ==8063== by 0x4DE345C: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x41CF7E8: dialog_quit (dialog-quit.c:374) ==8063== by 0x417CCA7: cb_file_quit (wbc-gtk-actions.c:307) ==8063== by 0x4DFB35B: g_cclosure_marshal_VOID__VOID (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4DE1F41: g_closure_invoke (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== Address 0x6baaea0 is 0 bytes inside a block of size 48 free'd ==8063== at 0x4027996: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so) ==8063== by 0x4E7B835: g_free (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4E04AD6: g_type_free_instance (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4321516: go_style_finalize (go-style.c:1211) ==8063== by 0x4DE345C: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x433E46E: gog_styled_object_finalize (gog-styled-object.c:125) ==8063== by 0x4DE345C: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4337D83: gog_object_parent_finalized (gog-object.c:98) ==8063== by 0x4E94537: g_slist_foreach (in /usr/lib/libglib-2.0.so.0.2400.1) ==8063== by 0x4338950: gog_object_finalize (gog-object.c:109) ==8063== by 0x433E481: gog_styled_object_finalize (gog-styled-object.c:129) ==8063== by 0x436938B: gog_series_finalize (gog-series.c:309) ==8063== by 0x4DE345C: g_object_unref (in /usr/lib/libgobject-2.0.so.0.2400.1) ==8063== by 0x4337D83: gog_object_parent_finalized (gog-object.c:98)
Maybe godoc::imagebuf should copy ids.
Done. The problem in comment 2 persists, though.
This problem has been fixed in our software repository. The fix will go into the next software release. Thank you for your bug report.