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 708282 - Nautilus aborts in nautilus_bookmark_connect_file()
Nautilus aborts in nautilus_bookmark_connect_file()
Status: RESOLVED FIXED
Product: nautilus
Classification: Core
Component: Crashers
3.11.x
Other Linux
: Normal critical
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
: 695342 697873 709902 719858 725927 727427 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-09-18 12:10 UTC by Milan Bouchet-Valat
Modified: 2014-05-02 12:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Add missing unref for NautilusFile used in network connections (1011 bytes, patch)
2014-05-01 22:29 UTC, Robert Ancell
none Details | Review
Add missing unref for NautilusFile used in network connections (1.03 KB, patch)
2014-05-01 22:31 UTC, Robert Ancell
accepted-commit_now Details | Review

Description Milan Bouchet-Valat 2013-09-18 12:10:39 UTC
This bug has been reported by about 5 people on Fedora 19, with Nautilus 3.8.2:
https://bugzilla.redhat.com/show_bug.cgi?id=960444

Seems to happens when unmounting both local and network mounts.

Core was generated by `/usr/bin/nautilus --no-default-window'.
Program terminated with signal 6, Aborted.

Thread 1 (Thread 0x7ff99c94ca40 (LWP 2171))

  • #0 __GI_raise
    at ../nptl/sysdeps/unix/sysv/linux/raise.c line 56
  • #1 __GI_abort
    at abort.c line 90
  • #2 g_assertion_message
    at gtestutils.c line 1912
  • #3 g_assertion_message_expr
  • #4 nautilus_bookmark_connect_file
    at nautilus-bookmark.c line 350
  • #5 nautilus_bookmark_constructed
    at nautilus-bookmark.c line 549
  • #6 g_object_newv
    at gobject.c line 1747
  • #7 g_object_new_valist
    at gobject.c line 1836
  • #8 g_object_new
    at gobject.c line 1551
  • #9 nautilus_bookmark_new
    at nautilus-bookmark.c line 756
  • #10 nautilus_window_slot_update_bookmark
    at nautilus-window-slot.c line 1848
  • #11 nautilus_window_slot_update_for_new_location
    at nautilus-window-slot.c line 2133
  • #12 location_has_really_changed
    at nautilus-window-slot.c line 2389
  • #13 view_begin_loading_cb
    at nautilus-window-slot.c line 2310
  • #14 g_closure_invoke
    at gclosure.c line 777
  • #15 signal_emit_unlocked_R
    at gsignal.c line 3584
  • #16 g_signal_emit_valist
    at gsignal.c line 3328
  • #17 g_signal_emit
    at gsignal.c line 3384
  • #18 finish_loading
    at nautilus-view.c line 9144
  • #19 finish_loading_if_all_metadata_loaded
    at nautilus-view.c line 9203
  • #20 metadata_for_files_in_directory_ready_callback
    at nautilus-view.c line 9244
  • #21 ready_callback_call
    at nautilus-directory-async.c line 1285
  • #22 call_ready_callbacks_at_idle
    at nautilus-directory-async.c line 1855
  • #23 g_main_dispatch
    at gmain.c line 3054
  • #24 g_main_context_dispatch
    at gmain.c line 3630
  • #25 g_main_context_iterate
    at gmain.c line 3701
  • #26 g_main_context_iteration
    at gmain.c line 3762
  • #27 g_application_run
    at gapplication.c line 1623
  • #28 main
    at nautilus-main.c line 104

Comment 1 Bastian Ilsø 2013-09-19 18:14:17 UTC
Can confirm this in Fedora 20 nightly build from 18th september, nautilus 3.9.91.

The way I produce the bug is by:

- Mounting ftp://rvzt.net
- Unmounting ftp://rvzt.net
- Attempting to mount ftp://rvzt.net again.

After pressing "Connect" in the dialogue, Nautilus crashes and the following error is printed in the terminal:

ERROR:nautilus-bookmark.c:350:nautilus_bookmark_connect_file: assertion failed: (!nautilus_file_is_gone (bookmark->details->file))
Aborted (core dumped)
Comment 2 Éloi Rivard 2013-09-30 08:30:22 UTC
I can confirm this. It happens almost every time I unmount my ftp mount.
Comment 3 António Fernandes 2013-09-30 15:07:38 UTC
*** Bug 697873 has been marked as a duplicate of this bug. ***
Comment 4 António Fernandes 2013-10-11 12:04:34 UTC
*** Bug 709902 has been marked as a duplicate of this bug. ***
Comment 5 António Fernandes 2013-10-14 16:34:11 UTC
*** Bug 695342 has been marked as a duplicate of this bug. ***
Comment 6 António Fernandes 2013-12-04 19:28:06 UTC
*** Bug 719858 has been marked as a duplicate of this bug. ***
Comment 7 Igor Gnatenko 2014-02-07 12:07:06 UTC
Got this bug with 3.11.5 nautilus
Comment 8 António Fernandes 2014-03-09 17:58:39 UTC
*** Bug 725927 has been marked as a duplicate of this bug. ***
Comment 9 Iain Lane 2014-04-17 10:37:27 UTC
Despite what rhbz #960444 says, I still see this with HEAD
Comment 10 Robert Ancell 2014-04-24 02:59:52 UTC
You can also reproduce by:
- Mounting ftp://rvzt.net
- Unmounting ftp://rvzt.net
- Pressing back

The cause seems to be that a NautilusBookmark is retained in the history, but this bookmark is removed when the FTP connection is terminated. The NautilusBookmark keeps a reference to the NautilusFile that represents this file.

When you try to go back to this bookmark, either by pressing back or creating an identical connection the old NautilusFile object is accessed. This object is marked as "gone" and the assertion fails.

It seems like the NautilusBookmark should be removed from the history when the connection is terminated and this will cause the NautilusFile object to also be removed and then regenerated next time it is needed.
Comment 11 Robert Ancell 2014-04-24 03:00:37 UTC
This is currently one of the top crash reports occurring in Ubuntu.
Comment 12 Robert Ancell 2014-05-01 22:29:51 UTC
Created attachment 275584 [details] [review]
Add missing unref for NautilusFile used in network connections

Finally found the damn missing unref!!
Comment 13 Robert Ancell 2014-05-01 22:30:24 UTC
This bug was introduced in commit 95d42ea01f7f9c60210b415554e7bbf6f4e1b334 and has been since nautilus 3.5.91.
Comment 14 Robert Ancell 2014-05-01 22:31:43 UTC
Created attachment 275585 [details] [review]
Add missing unref for NautilusFile used in network connections

Fix commit message
Comment 15 Cosimo Cecchi 2014-05-01 22:34:25 UTC
Review of attachment 275585 [details] [review]:

Good catch!
Comment 16 António Fernandes 2014-05-02 12:56:36 UTC
*** Bug 727427 has been marked as a duplicate of this bug. ***