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 667696 - gtk_container_foreach: assertion `GTK_IS_CONTAINER (container)' criticals when ejecting volume
gtk_container_foreach: assertion `GTK_IS_CONTAINER (container)' criticals whe...
Status: RESOLVED INCOMPLETE
Product: nautilus
Classification: Core
Component: Sidebar
3.5.x
Other Linux
: Normal normal
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-01-11 13:38 UTC by Chris Wilson
Modified: 2012-10-19 23:15 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Chris Wilson 2012-01-11 13:38:00 UTC
Originally reported at https://bugs.launchpad.net/hundredpapercuts/+bug/912597

Hi!
Nautilus, when working on files within connected USB memory stick /flash or hardrive/, when a folder/file is selected and "delete" key pressed, files aren't deleted but moved into hidden .trash directory- which isn't deleted when drive is unmounted- also those "hidden" files occupy space on drive, which isn't visible when you choose still visible files /just to know, how much space is left etc/. that can cause a confusion /yes, i know you can manually delete .trash folder from usb drive, but- why?/.
proposed solution? if device isn't locally connected /but is usb or esata etc/ than files should be deleted permanently- i.e. user should get a warning like "you are going to delete your files permanently. you won't be able to recover them. continue? y/n".
also, those memory sticks should be connected with "sync" option- so manual unmounting /i.e. with mouse, not via command/ them wouldn't be that necessary /it would shorten the time for 'ejection' of disks mounted/.

bet regards
simon
Comment 1 André Klapper 2012-01-11 15:05:52 UTC
/this/report/is/really/hard/to/read.

When unmounting, don't you get a popup asking whether to empty the trash folder on the USB stick?
Comment 2 Sebastien Bacher 2012-02-01 17:30:28 UTC
nautilus 3.3.4 doesn't ask if you want to empty the trash on eject there, does it work for you?

it does print those warnings though:
gtk_container_foreach: assertion `GTK_IS_CONTAINER (container)' failed
Comment 3 Cosimo Cecchi 2012-02-06 20:50:29 UTC
(In reply to comment #2)
> nautilus 3.3.4 doesn't ask if you want to empty the trash on eject there, does
> it work for you?

That's probably https://bugzilla.gnome.org/show_bug.cgi?id=603390

> it does print those warnings though:
> gtk_container_foreach: assertion `GTK_IS_CONTAINER (container)' failed

I don't see this here...
Can you run nautilus under gdb with G_DEBUG=fatal_criticals and send a backtrace of the critical?

Leaving this bug open for the critical, since the other part is a duplicate of bug 603390.
Comment 4 Sebastien Bacher 2012-02-07 21:52:35 UTC
stacktrace of the warning:

(gdb) bt
  • #0 g_logv
    at /build/buildd/glib2.0-2.31.16/./glib/gmessages.c line 661
  • #1 g_log
    at /build/buildd/glib2.0-2.31.16/./glib/gmessages.c line 792
  • #2 g_return_if_fail_warning
  • #3 gtk_container_foreach
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 2056
  • #4 gtk_container_get_children
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkcontainer.c line 2125
  • #5 update_node
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkuimanager.c line 2648
  • #6 update_node
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkuimanager.c line 3090
  • #7 update_node
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkuimanager.c line 3090
  • #8 do_updates
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkuimanager.c line 3132
  • #9 do_updates_idle
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gtk/gtkuimanager.c line 3142
  • #10 gdk_threads_dispatch
    at /build/gtk+3/build-area/gtk+3.0-3.3.14/./gdk/gdk.c line 745
  • #11 g_idle_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 4629
  • #12 g_main_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 2510
  • #13 g_main_context_dispatch
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3047
  • #14 g_main_context_iterate
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3118
  • #15 g_main_context_iterate
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3055
  • #16 g_main_context_iteration
    at /build/buildd/glib2.0-2.31.16/./glib/gmain.c line 3179
  • #17 g_application_run
    at /build/buildd/glib2.0-2.31.16/./gio/gapplication.c line 1496
  • #18 main
    at nautilus-main.c line 101

Comment 5 Cosimo Cecchi 2012-03-29 21:48:28 UTC
Sebastien, some parts of this trace look similar to the one in bug 664298.
Are you sure those criticals are not triggered from libdbusmenu as well?
Comment 6 André Klapper 2012-06-10 01:41:29 UTC
seb128: Can you answer comment 5 please?
Comment 7 Sebastien Bacher 2012-06-21 10:26:59 UTC
@Cosimo: yes, I'm pretty sure it's not a libdbusmenu issue:

- the stacktrace I added in comment #4 has no libdbusmenu in it
- it happens with appmenu disabled
- google lists similar warning in log from fedora or opensuse users
Comment 8 Sebastien Bacher 2012-06-21 10:28:24 UTC
the issue is still happening with 3.5.2, updating the version
Comment 9 Sebastien Bacher 2012-06-21 10:29:46 UTC
(it happens also with unpatched gtk and nautilus built from current tarballs with adwaita as a theme)
Comment 10 Cosimo Cecchi 2012-10-19 23:15:44 UTC
I believe I haven't seen this recently.
Sebastien, please reopen if you still see this happening with 3.6, thanks.