GNOME Bugzilla – Bug 119407
Nautilus crash when click on Back after view failure
Last modified: 2004-12-22 21:47:04 UTC
This is happening on nautilus 2.2 running on SUSE linux. I did not observe it in 2.4 though. When there is a problem in viewing a remote file, nautilus throws up appropriate error. Now, if user clicks on Back or Up of nautilus navigation bar, Nautilus crashes. To reproduce: 1. Open a nautilus window. On the location bar, give partial syntax of ftp like "ftp://<server-ip-address>. 2. Now nautilus prompts for user id and password. 3. After provind userid/password, nautilus shows the contents of the server. 4. Browse to a directory which has a .txt file. Double click on the file. Nautilus throws up a view failure error because, it does not have necessary permissions on the file. 5. Now, click on Back/Up of the control bar. Nautilus crashes. Stack attached.
Created attachment 19023 [details] Stack trace of nautilus crash
When user tries to navigate to a different location after encountering a view error, nautilus tries to set current bookmark scroll positions. In that process, it tries to get the current position by passing content_view member of NautilusWindow to nautilus_view_frame_get_first_visible_file(). But since there was a problem in the earlier operation of loading, content_view member is NULL and nautilus crashes upon further access of the members of the structure. So, make sure that content_view is not NULL before accessing it. I will attach a small patch.
Created attachment 19024 [details] [review] proposed patch
Setting priority to high because of the patch.
Thanks for the patch, i fixed it in cvs in a slightly different way.
*** Bug 120286 has been marked as a duplicate of this bug. ***
*** Bug 114027 has been marked as a duplicate of this bug. ***
*** Bug 108313 has been marked as a duplicate of this bug. ***
*** Bug 125550 has been marked as a duplicate of this bug. ***
*** Bug 128658 has been marked as a duplicate of this bug. ***
pasting stack trace inline to make searching easier: (gdb) where
+ Trace 43046
1 breakpoint keep y 0x4004ee65 in vfs_authentication_callback at nautilus-authn-manager.c:246 2 breakpoint keep y 0x4004e908 in construct_password_dialog at nautilus-authn-manager.c:60 breakpoint already hit 5 times 3 breakpoint keep y 0x4004eae8 in authentication_dialog_button_clicked at nautilus-authn-manager.c:141 breakpoint already hit 5 times 4 breakpoint keep y 0x0807ef48 in determined_initial_view_callback at nautilus-window-manage-views.c:1284 breakpoint already hit 9 times 5 breakpoint keep y 0x0807a318 in view_frame_activated at nautilus-view-frame.c:278 breakpoint already hit 7 times 6 breakpoint keep y 0x0808097b in view_loaded_callback at nautilus-window-manage-views.c:2146 breakpoint already hit 7 times 7 breakpoint keep y 0x0807b50b in nautilus_view_frame_load_location at nautilus-view-frame.c:833 breakpoint already hit 6 times 9 breakpoint keep y 0x0807a828 in view_frame_failed at nautilus-view-frame.c:413
*** Bug 130704 has been marked as a duplicate of this bug. ***