GNOME Bugzilla – Bug 765045
nautilus crashes on startup when launched by right clicking -> "New window" in gnome-shell
Last modified: 2016-04-26 08:39:07 UTC
Nautilus crashes on startup when launched by right clicking -> "New window" in gnome-shell. A regular left click correctly launches nautilus. coredumpctl info 26483 PID: 26483 (nautilus) UID: 1000 (hussam) GID: 100 (users) Signal: 6 (ABRT) Timestamp: Thu 2016-04-14 14:47:11 EEST (30s ago) Command Line: /usr/bin/nautilus --gapplication-service Executable: /usr/bin/nautilus Control Group: /user.slice/user-1000.slice/user@1000.service/dbus.service Unit: user@1000.service User Unit: user@1000.service Slice: user-1000.slice Owner UID: 1000 (hussam) Boot ID: 5224a43c7359498d97f813f2f620000f Machine ID: efb490e643e2436d9d1138df1745a008 Hostname: hades Message: Process 26483 (nautilus) of user 1000 dumped core. Stack trace of thread 26483: #0 0x00007fd384b632a8 raise (libc.so.6) #1 0x00007fd384b6472a abort (libc.so.6) #2 0x00007fd3859e0b25 g_assertion_message (libglib-2.0.so.0) #3 0x00007fd3859e0bba g_assertion_message_expr (libglib-2.0.so.0) #4 0x0000000000475d26 nautilus_window_get_active_slot (nautilus) #5 0x000000000042fc4e nautilus_application_open_location_full (nautilus) #6 0x0000000000430141 action_new_window (nautilus) #7 0x00007fd385c90fa5 g_closure_invoke (libgobject-2.0.so.0) #8 0x00007fd385ca2ff1 signal_emit_unlocked_R (libgobject-2.0.so.0) #9 0x00007fd385cabd8c g_signal_emit_valist (libgobject-2.0.so.0) #10 0x00007fd385cac0bf g_signal_emit (libgobject-2.0.so.0) #11 0x00007fd385f88ac5 g_simple_action_activate (libgio-2.0.so.0) #12 0x00007fd385f825d5 g_application_impl_method_call (libgio-2.0.so.0) #13 0x00007fd385fa7e0c call_in_idle_cb (libgio-2.0.so.0) #14 0x00007fd3859badba g_main_dispatch (libglib-2.0.so.0) #15 0x00007fd3859bb160 g_main_context_iterate (libglib-2.0.so.0) #16 0x00007fd3859bb20c g_main_context_iteration (libglib-2.0.so.0) #17 0x00007fd385f80afd g_application_run (libgio-2.0.so.0) #18 0x00000000004294e7 main (nautilus) #19 0x00007fd384b50710 __libc_start_main (libc.so.6) #20 0x0000000000429549 _start (nautilus) Stack trace of thread 26485: #0 0x00007fd384c0ec6d poll (libc.so.6) #1 0x00007fd3859bb0fc g_main_context_poll (libglib-2.0.so.0) #2 0x00007fd3859bb20c g_main_context_iteration (libglib-2.0.so.0) #3 0x00007fd3859bb249 glib_worker_main (libglib-2.0.so.0) #4 0x00007fd3859e1975 g_thread_proxy (libglib-2.0.so.0) #5 0x00007fd384ed8424 start_thread (libpthread.so.0) #6 0x00007fd384c17ced __clone (libc.so.6) Stack trace of thread 26486: #0 0x00007fd384c0ec6d poll (libc.so.6) #1 0x00007fd3859bb0fc g_main_context_poll (libglib-2.0.so.0) #2 0x00007fd3859bb482 g_main_loop_run (libglib-2.0.so.0) #3 0x00007fd385fb76d6 gdbus_shared_thread_func (libgio-2.0.so.0) #4 0x00007fd3859e1975 g_thread_proxy (libglib-2.0.so.0) #5 0x00007fd384ed8424 start_thread (libpthread.so.0) #6 0x00007fd384c17ced __clone (libc.so.6) Stack trace of thread 26488: #0 0x00007fd384c0ec6d poll (libc.so.6) #1 0x00007fd3859bb0fc g_main_context_poll (libglib-2.0.so.0) #2 0x00007fd3859bb20c g_main_context_iteration (libglib-2.0.so.0) #3 0x00007fd3733f243d n/a (libdconfsettings.so) #4 0x00007fd3859e1975 g_thread_proxy (libglib-2.0.so.0) #5 0x00007fd384ed8424 start_thread (libpthread.so.0) #6 0x00007fd384c17ced __clone (libc.so.6) Stack trace of thread 26487: #0 0x00007fd384c13829 syscall (libc.so.6) #1 0x00007fd3859ffafa g_cond_wait_until (libglib-2.0.so.0) #2 0x00007fd38598f929 g_async_queue_pop_intern_unlocked (libglib-2.0.so.0) #3 0x00007fd3859e22e6 g_thread_pool_wait_for_new_task (libglib-2.0.so.0) #4 0x00007fd3859e1975 g_thread_proxy (libglib-2.0.so.0) #5 0x00007fd384ed8424 start_thread (libpthread.so.0) #6 0x00007fd384c17ced __clone (libc.so.6) Looking at the .desktop file, there are two --new-window options? Removing the second one got rid of the crash.
*** Bug 764702 has been marked as a duplicate of this bug. ***
Created attachment 326730 [details] [review] application: protect against having no window If nautilus is run with --gapplication-service it has no active window active. We were assuming there is always a window active, and therefore nautilus was crashing if the active window was null. To fix it add some safe guards.
Attachment 326730 [details] pushed as 6ffaf5e - application: protect against having no window