After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 680157 - invalid read valgrind errors
invalid read valgrind errors
Status: RESOLVED DUPLICATE of bug 680349
Product: nautilus
Classification: Core
Component: general
3.5.x
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-07-18 11:48 UTC by Sebastien Bacher
Modified: 2012-07-21 05:31 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Sebastien Bacher 2012-07-18 11:48:06 UTC
Running 3.5.4 under valgrind I get those error

"==9117== Invalid read of size 4
==9117==    at 0x4C226EE: g_object_get (gobject.c:2106)
==9117==    by 0x80C041C: set_status_timeout_cb (nautilus-window-slot.c:583)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x6bbfdf0 is 0 bytes inside a block of size 396 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117== 
==9117== Invalid read of size 4
==9117==    at 0x4C3F06A: g_type_check_instance_is_a (gtype.c:3959)
==9117==    by 0x4C22708: g_object_get (gobject.c:2106)
==9117==    by 0x80C041C: set_status_timeout_cb (nautilus-window-slot.c:583)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x6bbfdf0 is 0 bytes inside a block of size 396 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)"

and those

"==9117== Invalid read of size 4
==9117==    at 0x4122B07: gtk_action_group_get_action (gtkactiongroup.c:802)
==9117==    by 0x80B4DBB: real_update_menus (nautilus-view.c:8640)
==9117==    by 0x8077D4C: nautilus_icon_view_update_menus (nautilus-icon-view.c:1379)
==9117==    by 0x80B3B68: nautilus_view_update_menus (nautilus-view.c:728)
==9117==    by 0x80B3BC4: update_menus_timeout_callback (nautilus-view.c:3664)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x12847718 is 0 bytes inside a block of size 44 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x4CA1B95: g_list_foreach (glist.c:942)
==9117==    by 0x4CA1BE1: g_list_free_full (glist.c:183)
==9117==    by 0x4398FC5: gtk_ui_manager_finalize (gtkuimanager.c:686)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x80C32A3: nautilus_window_finalize (nautilus-window.c:1221)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117== 
==9117== Invalid read of size 4
==9117==    at 0x4C3F06A: g_type_check_instance_is_a (gtype.c:3959)
==9117==    by 0x4122B1D: gtk_action_group_get_action (gtkactiongroup.c:802)
==9117==    by 0x80B4DBB: real_update_menus (nautilus-view.c:8640)
==9117==    by 0x8077D4C: nautilus_icon_view_update_menus (nautilus-icon-view.c:1379)
==9117==    by 0x80B3B68: nautilus_view_update_menus (nautilus-view.c:728)
==9117==    by 0x80B3BC4: update_menus_timeout_callback (nautilus-view.c:3664)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x12847718 is 0 bytes inside a block of size 44 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x4CA1B95: g_list_foreach (glist.c:942)
==9117==    by 0x4CA1BE1: g_list_free_full (glist.c:183)
==9117==    by 0x4398FC5: gtk_ui_manager_finalize (gtkuimanager.c:686)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x80C32A3: nautilus_window_finalize (nautilus-window.c:1221)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117== 
==9117== Invalid read of size 4
==9117==    at 0x4122B07: gtk_action_group_get_action (gtkactiongroup.c:802)
==9117==    by 0x80B4E0A: real_update_menus (nautilus-view.c:8653)
==9117==    by 0x8077D4C: nautilus_icon_view_update_menus (nautilus-icon-view.c:1379)
==9117==    by 0x80B3B68: nautilus_view_update_menus (nautilus-view.c:728)
==9117==    by 0x80B3BC4: update_menus_timeout_callback (nautilus-view.c:3664)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x12847718 is 0 bytes inside a block of size 44 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x4CA1B95: g_list_foreach (glist.c:942)
==9117==    by 0x4CA1BE1: g_list_free_full (glist.c:183)
==9117==    by 0x4398FC5: gtk_ui_manager_finalize (gtkuimanager.c:686)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x80C32A3: nautilus_window_finalize (nautilus-window.c:1221)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117== 
==9117== Invalid read of size 4
==9117==    at 0x4C3F06A: g_type_check_instance_is_a (gtype.c:3959)
==9117==    by 0x4122B1D: gtk_action_group_get_action (gtkactiongroup.c:802)
==9117==    by 0x80B4E0A: real_update_menus (nautilus-view.c:8653)
==9117==    by 0x8077D4C: nautilus_icon_view_update_menus (nautilus-icon-view.c:1379)
==9117==    by 0x80B3B68: nautilus_view_update_menus (nautilus-view.c:728)
==9117==    by 0x80B3BC4: update_menus_timeout_callback (nautilus-view.c:3664)
==9117==    by 0x4CA57EE: g_timeout_dispatch (gmain.c:3882)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)
==9117==  Address 0x12847718 is 0 bytes inside a block of size 44 free'd
==9117==    at 0x402B06C: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==9117==    by 0x4CAABEA: standard_free (gmem.c:98)
==9117==    by 0x4CAAD5F: g_free (gmem.c:252)
==9117==    by 0x4CC04FA: g_slice_free1 (gslice.c:1111)
==9117==    by 0x4C3E131: g_type_free_instance (gtype.c:1935)
==9117==    by 0x4C1F5CA: g_object_unref (gobject.c:3036)
==9117==    by 0x4CA1B95: g_list_foreach (glist.c:942)
==9117==    by 0x4CA1BE1: g_list_free_full (glist.c:183)
==9117==    by 0x4398FC5: gtk_ui_manager_finalize (gtkuimanager.c:686)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x80C32A3: nautilus_window_finalize (nautilus-window.c:1221)
==9117==    by 0x4C1F557: g_object_unref (gobject.c:3023)
==9117==    by 0x423FB1C: gtk_main_do_event (gtkmain.c:1614)
==9117==    by 0x45C6FDB: _gdk_event_emit (gdkevents.c:69)
==9117==    by 0x45F4CE7: gdk_event_source_dispatch (gdkeventsource.c:358)
==9117==    by 0x4CA4B12: g_main_context_dispatch (gmain.c:2539)
==9117==    by 0x4CA4EAF: g_main_context_iterate.isra.21 (gmain.c:3146)
==9117==    by 0x4CA4F90: g_main_context_iteration (gmain.c:3207)
==9117==    by 0x4B45D4B: g_application_run (gapplication.c:1607)
==9117==    by 0x8067717: main (nautilus-main.c:103)"
Comment 1 Sebastien Bacher 2012-07-18 11:51:19 UTC
Easy way to trigger the errors and segfault (could be the same than bug #670646)

- gsettings set org.gnome.desktop.background draw-background true
- run nautilus
- click on the new menu button
- select "new win"
- close the new dialog
- click on the menu button again
- select "new tab"
- close the tab

it usually segfaults either when opening or closing the tab
Comment 2 Sebastien Bacher 2012-07-18 19:23:20 UTC
seems to be due to http://git.gnome.org/browse/gtk+/commit/?id=325cf071d1b6de55eac2a97d8f38558efda17807 ... reassigning to GTK
Comment 3 Matthias Clasen 2012-07-20 18:30:41 UTC
This really looks more like a nautilus issue.

dir_action_group is stored in the view details, without taking a reference, and then used in signal callbacks. The only involvement of the gtk change is most likely that it changed the times when those signal callbacks happen.
Comment 4 Matthias Clasen 2012-07-20 18:31:07 UTC
Also, I can't reproduce this here with nautilus 3.5.4
Comment 5 Sebastien Bacher 2012-07-20 18:43:49 UTC
@ I can't reproduce this here with nautilus 3.5.4

did you make nautilus display the background? not sure what is different in our configs but when I tried I was running gtk and nautilus vanilla from upstream so I doubt it's a distro patch, applying the commit to gtk 3.4 also creates the issue
Comment 6 Matthias Clasen 2012-07-20 23:48:10 UTC
I don't doubt that you see a nautilus crash, and that you correctly identified this commit as triggering it. But the stacktrace does not have any notebook code in it.
Comment 7 William Jon McCann 2012-07-21 05:31:14 UTC

*** This bug has been marked as a duplicate of bug 680349 ***