Bug 105810

Summary: file-selector smb:/// auto-completion crash ...
Product: [openSUSE] SUSE LINUX 10.0 Reporter: Michael Meeks <mmeeks>
Component: GNOMEAssignee: Federico Mena Quintero <federico>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Critical    
Priority: P5 - None CC: federico, sbrabec
Version: Beta 2   
Target Milestone: ---   
Hardware: Other   
OS: All   
Whiteboard:
Found By: Other Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: Valgrind output
Backtrace of assertion
gnome-vfs2-2.11.90-9.i586.rpm
gnome-vfs2-devel-2.11.90-9.i586.rpm
gnome-vfs2-doc-2.11.90-9.i586.rpm

Description Michael Meeks 2005-08-19 11:35:42 UTC
I fire up gedit2, file->open->Ctrl-l
I type 'smb://192.168.0.7' - which works fine - then the final '/' and bang:

libgnomevfs-ERROR **: file gnome-vfs-job.c: line 487
(dispatch_sync_job_callback): should not be reached
aborting...

Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 1091757920 (LWP 10833)]
0x40d1f5a4 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0
(gdb) bt
#0  0x40d1f5a4 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0
#1  0x40d1f865 in g_log () from /opt/gnome/lib/libglib-2.0.so.0
#2  0x40d1f8e1 in g_assert_warning () from /opt/gnome/lib/libglib-2.0.so.0
#3  0x40394e08 in _gnome_vfs_thread_backend_shutdown ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
#4  0x40d17fd1 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
#5  0x40d159ec in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#6  0x40d18e5b in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#7  0x40d19177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
#8  0x408df70f in gtk_dialog_run () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#9  0x409100c0 in gtk_file_chooser_dialog_new_with_backend ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#10 0x40cc1165 in g_cclosure_marshal_VOID__STRING ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#11 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#12 0x40cc38c7 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#13 0x40cc4b2b in g_signal_emitv () from /opt/gnome/lib/libgobject-2.0.so.0
#14 0x40882b07 in gtk_bin_get_child () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#15 0x40883c2c in gtk_binding_set_by_class ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#16 0x40883eeb in gtk_binding_set_by_class ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#17 0x4088411a in gtk_bindings_activate_event ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#18 0x40a791c5 in gtk_widget_activate ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#19 0x4096f7d4 in gtk_marshal_VOID__UINT_STRING ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#20 0x40cb2797 in g_cclosure_new_swap ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#21 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#22 0x40cc3e27 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#23 0x40cc5371 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#24 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#25 0x40a79414 in gtk_widget_activate ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#26 0x40a8c6e8 in gtk_window_propagate_key_event ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#27 0x40a9186c in gtk_window_activate_key ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#28 0x4096f7d4 in gtk_marshal_VOID__UINT_STRING ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#29 0x40cb2797 in g_cclosure_new_swap ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#30 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#31 0x40cc3e27 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#32 0x40cc5371 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#33 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#34 0x40a79414 in gtk_widget_activate ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#35 0x4096c5da in gtk_propagate_event ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#36 0x4096ca2f in gtk_main_do_event () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#37 0x40b9502a in gdk_screen_get_setting ()
   from /opt/gnome/lib/libgdk-x11-2.0.so.0
#38 0x40d159ec in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#39 0x40d18e5b in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#40 0x40d19177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
#41 0x408df70f in gtk_dialog_run () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#42 0x0807f7b1 in bonobo_mdi_save_state ()
#43 0x0807620e in gedit_file_open ()
#44 0x40218bd5 in bonobo_socket_add_id ()
#45 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#46 0x4054954b in bonobo_closure_invoke_va_list ()
   from /opt/gnome/lib/libbonobo-2.so.0
#47 0x40549865 in bonobo_closure_invoke () from /opt/gnome/lib/libbonobo-2.so.0
#48 0x4021b52a in bonobo_ui_component_remove_listener ()
   from /opt/gnome/lib/libbonoboui-2.so.0
#49 0x4054a881 in _ORBIT_skel_small_Bonobo_UIComponent_execVerb ()
   from /opt/gnome/lib/libbonobo-2.so.0
#50 0x405ef176 in ORBit_c_stub_invoke () from /opt/gnome/lib/libORBit-2.so.0
#51 0x4054ed02 in Bonobo_UIComponent_execVerb ()
   from /opt/gnome/lib/libbonobo-2.so.0
#52 0x4021ff8b in bonobo_ui_engine_ui_event ()
   from /opt/gnome/lib/libbonoboui-2.so.0
#53 0x40cc13a5 in g_cclosure_marshal_VOID__POINTER ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#54 0x40cb2797 in g_cclosure_new_swap ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#55 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#56 0x40cc3e27 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#57 0x40cc5610 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#58 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#59 0x4021f6f7 in bonobo_ui_engine_emit_verb_on_w ()
   from /opt/gnome/lib/libbonoboui-2.so.0
#60 0x40229194 in bonobo_ui_sync_status_new ()
   from /opt/gnome/lib/libbonoboui-2.so.0
#61 0x40cc086b in g_cclosure_marshal_VOID__VOID ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#62 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#63 0x40cc3c96 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#64 0x40cc5610 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#65 0x40cc82c0 in g_signal_emit_by_name ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#66 0x40a2dc57 in gtk_tool_button_get_type ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#67 0x40cc086b in g_cclosure_marshal_VOID__VOID ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#68 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#69 0x40cc3c96 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#70 0x40cc5610 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#71 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#72 0x40887841 in gtk_button_clicked () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#73 0x40889828 in gtk_button_get_alignment ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#74 0x40cc086b in g_cclosure_marshal_VOID__VOID ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#75 0x40cb2797 in g_cclosure_new_swap ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#76 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#77 0x40cc38c7 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#78 0x40cc5610 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#79 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#80 0x408877b1 in gtk_button_released ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#81 0x40888be2 in gtk_button_set_relief ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#82 0x4096f7d4 in gtk_marshal_VOID__UINT_STRING ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#83 0x40cb2797 in g_cclosure_new_swap ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#84 0x40cb2e79 in g_closure_invoke () from /opt/gnome/lib/libgobject-2.0.so.0
#85 0x40cc3e27 in g_signal_stop_emission ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#86 0x40cc5371 in g_signal_emit_valist ()
   from /opt/gnome/lib/libgobject-2.0.so.0
#87 0x40cc5965 in g_signal_emit () from /opt/gnome/lib/libgobject-2.0.so.0
#88 0x40a79414 in gtk_widget_activate ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#89 0x4096c48a in gtk_propagate_event ()
   from /opt/gnome/lib/libgtk-x11-2.0.so.0
#90 0x4096ca2f in gtk_main_do_event () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#91 0x40b9502a in gdk_screen_get_setting ()
   from /opt/gnome/lib/libgdk-x11-2.0.so.0
#92 0x40d159ec in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#93 0x40d18e5b in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#94 0x40d19177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
#95 0x4096d421 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#96 0x08060ae5 in main ()

[ you can see why we need a 10Mb default stack size ;-]
Comment 1 Ben Kahn 2005-08-22 18:05:18 UTC
I see this with Nautilus as well:

Backtrace was generated from '/opt/gnome/bin/nautilus'

(no debugging symbols found)
Using host libthread_db library "/lib/tls/libthread_db.so.1".
(no debugging symbols found)
`system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols.
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread 1092856544 (LWP 5999)]
[New Thread 1141640112 (LWP 6262)]
[Thread debugging using libthread_db enabled]
[New Thread 1092856544 (LWP 5999)]
[New Thread 1141640112 (LWP 6262)]
[Thread debugging using libthread_db enabled]
[New Thread 1092856544 (LWP 5999)]
[New Thread 1141640112 (LWP 6262)]
[New Thread 1140509616 (LWP 6083)]
[New Thread 1138285488 (LWP 6069)]
0xffffe410 in __kernel_vsyscall ()
#0  0xffffe410 in __kernel_vsyscall ()
#1  0x40ee140b in __waitpid_nocancel () from /lib/tls/libpthread.so.0
#2  0x402f7a15 in libgnomeui_module_info_get ()
   from /opt/gnome/lib/libgnomeui-2.so.0
#3  <signal handler called>
#4  0x40f1a5a4 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0
#5  0x40f1a865 in g_log () from /opt/gnome/lib/libglib-2.0.so.0
#6  0x40f1a8e1 in g_assert_warning () from /opt/gnome/lib/libglib-2.0.so.0
#7  0x40ad3e08 in _gnome_vfs_thread_backend_shutdown ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
#8  0x40f12fd1 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
#9  0x40f109ec in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
#10 0x40f13e5b in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
#11 0x40f14177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
#12 0x40642421 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
#13 0x0807b2c5 in main ()

Thread 4 (Thread 1138285488 (LWP 6069)):
#0  0xffffe410 in __kernel_vsyscall ()
No symbol table info available.
#1  0x4119b212 in poll () from /lib/tls/libc.so.6
No symbol table info available.
#2  0x40f13cac in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#3  0x40f14177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#4  0x40e73e50 in link_thread_io_context () from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#5  0x0815b818 in ?? ()
No symbol table info available.
#6  0x40f6b1a4 in ?? () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#7  0x43d8d458 in ?? ()
No symbol table info available.
#8  0x40f2f091 in g_static_private_free () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#9  0x40f2f091 in g_static_private_free () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#10 0x40edb277 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#11 0x411a510e in clone () from /lib/tls/libc.so.6
No symbol table info available.
#12 0x43d8dbb0 in ?? ()
No symbol table info available.

Thread 3 (Thread 1140509616 (LWP 6083)):
#0  0xffffe410 in __kernel_vsyscall ()
No symbol table info available.
#1  0x40edda56 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#2  0x40ae4cb8 in _gnome_vfs_thread_pool_init ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#3  0x40f2f091 in g_static_private_free () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#4  0x40edb277 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#5  0x411a510e in clone () from /lib/tls/libc.so.6
No symbol table info available.
#6  0x43facbb0 in ?? ()
No symbol table info available.

Thread 2 (Thread 1141640112 (LWP 6262)):
#0  0xffffe410 in __kernel_vsyscall ()
No symbol table info available.
#1  0x40edda56 in pthread_cond_wait@@GLIBC_2.3.2 ()
   from /lib/tls/libpthread.so.0
No symbol table info available.
#2  0x40ad3b11 in _gnome_vfs_thread_backend_shutdown ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#3  0x40ad5238 in _gnome_vfs_dispatch_module_callback ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#4  0x40ade76c in _gnome_vfs_module_callback_demarshal_invoke ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#5  0x40adf972 in gnome_vfs_module_callback_invoke ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#6  0x40ade4b6 in _gnome_vfs_module_callback_demarshal_invoke ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#7  0x40acbd0b in gnome_vfs_daemon_set_current_daemon_client_call ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#8  0x40ac0e4f in _ORBIT_skel_small_GNOME_VFS_ClientCall_ModuleCallbackInvoke
    () from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#9  0x40e69977 in ORBit_POA_setup_root () from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#10 0x40e6ed15 in ORBit_OAObject_invoke () from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#11 0x40e5ada4 in ORBit_small_invoke_adaptor ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#12 0x40e69cc8 in ORBit_POAObject_post_invoke ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#13 0x40e6a364 in ORBit_POAObject_post_invoke ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#14 0x40e5483b in giop_thread_queue_process ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#15 0x40e568dd in giop_recv_buffer_get () from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#16 0x40e5a3d8 in ORBit_small_invoke_stub ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#17 0x40e5a5c0 in ORBit_small_invoke_stub_n ()
   from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#18 0x40e6c0a2 in ORBit_c_stub_invoke () from /opt/gnome/lib/libORBit-2.so.0
No symbol table info available.
#19 0x40ac26eb in GNOME_VFS_AsyncDaemon_OpenDirectory ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#20 0x40ace18d in gnome_vfs_daemon_convert_to_corba_file_info ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#21 0x40acf40f in _gnome_vfs_daemon_method_get ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#22 0x40b077e0 in TC_GNOME_VFS_Result_struct ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#23 0x440c00c8 in ?? ()
No symbol table info available.
#24 0x08443fa0 in ?? ()
No symbol table info available.
#25 0x00000009 in ?? ()
No symbol table info available.
#26 0x00000000 in ?? ()
No symbol table info available.
#27 0x41203880 in mp_ () from /lib/tls/libc.so.6
No symbol table info available.
#28 0x083c5b00 in ?? ()
No symbol table info available.
#29 0x440c00c8 in ?? ()
No symbol table info available.
#30 0x00000009 in ?? ()
No symbol table info available.
#31 0x440c0218 in ?? ()
No symbol table info available.
#32 0x083c5b00 in ?? ()
No symbol table info available.
#33 0x40acf54f in gnome_vfs_directory_open_from_uri ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#34 0x43df2ea9 in ?? () from /opt/gnome/lib/gnome-vfs-2.0/modules/libnetwork.so
No symbol table info available.
#35 0x00000000 in ?? ()
No symbol table info available.
#36 0x08443fa0 in ?? ()
No symbol table info available.
#37 0x00000009 in ?? ()
No symbol table info available.
#38 0x440c0218 in ?? ()
No symbol table info available.
#39 0x08433328 in ?? ()
No symbol table info available.
#40 0x0839a83c in ?? ()
No symbol table info available.
#41 0x083c2090 in ?? ()
No symbol table info available.
#42 0x083c2198 in ?? ()
No symbol table info available.
#43 0x08443fa0 in ?? ()
No symbol table info available.
#44 0x00000000 in ?? ()
No symbol table info available.
#45 0x00000000 in ?? ()
No symbol table info available.
#46 0x440c0128 in ?? ()
No symbol table info available.
#47 0x00000038 in ?? ()
No symbol table info available.
#48 0x4120389c in main_arena () from /lib/tls/libc.so.6
No symbol table info available.
#49 0x756e696c in ?? ()
No symbol table info available.
#50 0x41140078 in _IO_wdefault_doallocate_internal () from /lib/tls/libc.so.6
No symbol table info available.
#51 0x40acf40f in _gnome_vfs_daemon_method_get ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#52 0x43df4b00 in ?? () from /opt/gnome/lib/gnome-vfs-2.0/modules/libnetwork.so
No symbol table info available.
#53 0x440c0268 in ?? ()
No symbol table info available.
#54 0x083c5408 in ?? ()
No symbol table info available.
#55 0x00000009 in ?? ()
No symbol table info available.
#56 0x0842cf40 in ?? ()
No symbol table info available.
#57 0x00000001 in ?? ()
No symbol table info available.
#58 0x440c0258 in ?? ()
No symbol table info available.
#59 0x40adf0ea in _gnome_vfs_module_callback_private_init ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#60 0x40ad47bb in _gnome_vfs_job_execute ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#61 0x40ad38d1 in _gnome_vfs_job_queue_shutdown ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#62 0x40ae4bc3 in _gnome_vfs_thread_pool_init ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#63 0x40f2f091 in g_static_private_free () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#64 0x40edb277 in start_thread () from /lib/tls/libpthread.so.0
No symbol table info available.
#65 0x411a510e in clone () from /lib/tls/libc.so.6
No symbol table info available.
#66 0x440c0bb0 in ?? ()
No symbol table info available.

Thread 1 (Thread 1092856544 (LWP 5999)):
#0  0xffffe410 in __kernel_vsyscall ()
No symbol table info available.
#1  0x40ee140b in __waitpid_nocancel () from /lib/tls/libpthread.so.0
No symbol table info available.
#2  0x402f7a15 in libgnomeui_module_info_get ()
   from /opt/gnome/lib/libgnomeui-2.so.0
No symbol table info available.
#3  <signal handler called>
No symbol table info available.
#4  0x40f1a5a4 in g_logv () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#5  0x40f1a865 in g_log () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#6  0x40f1a8e1 in g_assert_warning () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#7  0x40ad3e08 in _gnome_vfs_thread_backend_shutdown ()
   from /opt/gnome/lib/libgnomevfs-2.so.0
No symbol table info available.
#8  0x40f12fd1 in g_child_watch_add () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#9  0x40f109ec in g_main_context_dispatch ()
   from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#10 0x40f13e5b in g_main_context_check () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#11 0x40f14177 in g_main_loop_run () from /opt/gnome/lib/libglib-2.0.so.0
No symbol table info available.
#12 0x40642421 in gtk_main () from /opt/gnome/lib/libgtk-x11-2.0.so.0
No symbol table info available.
#13 0x0807b2c5 in main ()
No symbol table info available.
#0  0xffffe410 in __kernel_vsyscall ()
Comment 2 Ben Kahn 2005-08-22 18:31:54 UTC
Created attachment 47016 [details]
Valgrind output
Comment 3 Ben Kahn 2005-08-22 21:24:30 UTC
console spew when trying this from nautilus:

rupert@linux:~> nautilus
Thread 0x80e7368 time 1124745759.542823: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8189650 with handle 0x1 from async_job_map
Thread 0x80e7368 time 1124745759.573659: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x832d9a8 with handle 0x4 from async_job_map
Thread 0x80e7368 time 1124745759.595254: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8241738 with handle 0x2 from async_job_map
Thread 0x80e7368 time 1124745759.595822: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x833e748 with handle 0x3 from async_job_map
Thread 0x80e7368 time 1124745759.604689: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8359100 with handle 0x5 from async_job_map
Thread 0x80e7368 time 1124745759.604869: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0x6, job 0x8358f08,
op 0x83594e8, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745759.605044: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8359e80 with handle 0x7 from async_job_map
Thread 0x80e7368 time 1124745759.605069: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0x8, job 0x835a4f0,
op 0x835a5f0, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745759.66846: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8382070 with handle 0xa from async_job_map
Thread 0x80e7368 time 1124745759.719725: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x83b1ed8 with handle 0xb from async_job_map
Thread 0x80e7368 time 1124745759.719971: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0xc, job 0x83f63f8,
op 0x83f6430, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745759.725532: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0xd, job 0x83f6550,
op 0x83f6670, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745759.731424: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x83f6550 with handle 0xd from async_job_map
*** attempt to put segment in horiz list twice
Thread 0x80e7368 time 1124745760.579586: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8373140 with handle 0x9 from async_job_map
Thread 0x80e7368 time 1124745760.580925: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0xf, job 0x841cb78,
op 0x8401ff8, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745760.581136: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x84116c8 with handle 0xe from async_job_map
Thread 0x80e7368 time 1124745760.676751: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x841cb78 with handle 0xf from async_job_map
Thread 0x80e7368 time 1124745760.67681: MAIN:
_gnome_vfs_async_job_cancel_job_and_callbacks(): job_handle 0x10, job 0x841bf48,
op 0x8426368, and set its job->op->canceled to TRUE
Thread 0x80e7368 time 1124745760.705304: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x83fb140 with handle 0x11 from async_job_map
Thread 0x80e7368 time 1124745760.705409: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8322c60 with handle 0x12 from async_job_map
Thread 0x80e7368 time 1124745760.711657: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8425cf8 with handle 0x13 from async_job_map
Thread 0x80e7368 time 1124745764.950878: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8415070 with handle 0x14 from async_job_map
Thread 0x80e7368 time 1124745765.160357: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8413eb8 with handle 0x15 from async_job_map
Thread 0x80e7368 time 1124745765.173382: _gnome_vfs_async_job_map_remove_job():
REMOVING job 0x8425cf8 with handle 0x17 from async_job_map

libgnomevfs-ERROR **: file gnome-vfs-job.c: line 487
(dispatch_sync_job_callback): should not be reached
aborting...
Comment 4 Federico Mena Quintero 2005-08-23 18:28:50 UTC
Created attachment 47275 [details]
Backtrace of assertion

This is the relevant part of the trace which shows the assertion.  A worker
thread calls gnome-vfs-daemon for an OpenDirectory(), and then re-enters
through CORBA for a module callback; it blocks into job_notify() as it waits
for the main thread to respond.

Then, the main thread wakes up, picks up the notification, and asserts inside
dispatch_sync_job_callback().

I need to know if the VFS daemon triggered the module callback from within the
call to OpenDirectory (that re-entry could be due to another thing from the
daemon).

Basically, I have no idea of what the module_callbacks are for.  That's the
case that my patch doesn't handle.
Comment 5 Rodrigo Moya 2005-08-23 20:29:30 UTC
*** Bug 105491 has been marked as a duplicate of this bug. ***
Comment 6 Michael Meeks 2005-08-24 08:59:19 UTC
Module callbacks are for a number of things - primarily authentication I believe
- excerpting from libgnomevfs/GNOME_VFS.idl:

		struct ModuleCallbackQuestionIn ...
		struct ModuleCallbackQuestionOut ...
		struct ModuleCallbackAuthenticationIn ...
		struct ModuleCallbackAuthenticationOut ...
		struct ModuleCallbackFullAuthenticationIn ...
		struct ModuleCallbackFullAuthenticationOut ...
		struct ModuleCallbackFillAuthenticationIn ...
		struct ModuleCallbackFillAuthenticationOut ...
		struct ModuleCallbackSaveAuthenticationIn ...
		struct ModuleCallbackSaveAuthenticationOut ...

Of course if you have ORBit2 built with --enable-debug you can use export
ORBIT2_DEBUG=traces to see which of these is being invoked - in case that's not
clear :-)
Comment 7 Federico Mena Quintero 2005-08-24 16:54:58 UTC
*** Bug 105725 has been marked as a duplicate of this bug. ***
Comment 8 Federico Mena Quintero 2005-08-24 22:56:39 UTC
Created attachment 47471 [details]
gnome-vfs2-2.11.90-9.i586.rpm

I think this fixes the bug.  Ben and Nat, could you please check it in your
demo machine?
Comment 9 Federico Mena Quintero 2005-08-24 22:57:23 UTC
Created attachment 47472 [details]
gnome-vfs2-devel-2.11.90-9.i586.rpm
Comment 10 Federico Mena Quintero 2005-08-24 22:59:10 UTC
Created attachment 47473 [details]
gnome-vfs2-doc-2.11.90-9.i586.rpm
Comment 11 Michael Meeks 2005-08-25 16:50:01 UTC
Works nicely for me - also stops nautilus from crashing doing smb:// type stuff
- still getting a plague of authentication dialogs though. Now I get an auth
dialog at the exact spot where it crashed previously.

FWIW: smb:/// in the file-selector shows nothing, although nautilus' network:///
shows 2 nodes.
However smb://192.168.0.7/ shows 2 items correctly, and they are browseable -
although the 'share' icon is dramatically mis-sized [ but this is filed elsewhere ].

Nice - looks like this fixes it.
Comment 12 Michael Meeks 2005-08-25 16:52:54 UTC
Also - FWIW I get ~no related debug output on the c0nsole - and once the auth
stuff is passed - I also get nice auto-completion stuff in the drop-down -
looking good. Of course - still getting 3 lots of:

(gedit:21570): Gtk-CRITICAL **: gtk_file_system_path_is_local: assertion `path
!= NULL' failed

with a completely clean / default setup but ... ;-)
Comment 13 Federico Mena Quintero 2005-08-27 18:57:28 UTC
Submitted to autobuild; marking as fixed.  This should appear in
gnome-vfs2-2.11.92-3 or later.