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 75232 - GTKhtml view crash after viewing a html page and pressing Back
GTKhtml view crash after viewing a html page and pressing Back
Status: VERIFIED FIXED
Product: nautilus
Classification: Core
Component: [obsolete] Views: Web Page
1.1.x
Other Linux
: High critical
: ---
Assigned To: Nautilus Maintainers
Nautilus Maintainers
Depends on:
Blocks:
 
 
Reported: 2002-03-18 07:18 UTC by Anand
Modified: 2009-08-15 18:40 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Anand 2002-03-18 07:18:59 UTC
Gnome 2.0 Beta 2 was built on a sun-sparc machine 

Description:
Nautilus-gtkhtml-view process crashes after a html file has been viewed 
and the the Back button is pressed.

Steps:
1) Open a html page in nautilus (either a file present locally or a web 
page E.g. /home/guest/myfile.html)
2) After the html page has loaded in the main nautilus window, press 
the 'Back' button in the location bar (Pressing the back button should 
result nautilus to go back to the folder/files view)
3) GTKhtml view crashes.

Additional Info:
Although the GTKhtml view crashes, I'm able to open html files again in 
the nautilus window after the crash.

Debugging Info:
Stack trace attached below.

[New Thread 1024 (LWP 2455)]
[New Thread 2049 (LWP 2456)]
[New Thread 1026 (LWP 2457)]
[New Thread 2051 (LWP 2458)]
0x40b36519 in __wait4 () from /lib/i686/libc.so.6
  • #0 __wait4
    from /lib/i686/libc.so.6
  • #1 __DTOR_END__
    from /lib/i686/libc.so.6
  • #2 waitpid
    at wrapsyscall.c line 172
  • #3 libgnomeui_segv_handle
    at gnome-ui-init.c line 593
  • #4 pthread_sighandler
    at signals.c line 97
  • #5 <signal handler called>
  • #6 g_data_set_internal
    at gdataset.c line 218
  • #7 g_datalist_id_set_data_full
    at gdataset.c line 378
  • #8 g_object_real_dispose
    at gobject.c line 389
  • #9 gtk_object_dispose
    at gtkobject.c line 378
  • #10 gtk_widget_dispose
    at gtkwidget.c line 5602
  • #11 g_object_last_unref
    at gobject.c line 423
  • #12 g_object_unref
    at gobject.c line 1320
  • #13 nautilus_gtkhtml_view_finalize
    at nautilus-gtkhtml-view.c line 769
  • #14 g_object_last_unref
    at gobject.c line 436
  • #15 g_object_unref
    at gobject.c line 1320
  • #16 bonobo_object_finalize_internal
    at bonobo-object.c line 194
  • #17 bonobo_object_unref
    at bonobo- object.c line 304
  • #18 impl_Bonobo_Unknown_unref
    at bonobo-object.c line 514
  • #19 _ORBIT_skel_small_Bonobo_Unknown_unref
    at Bonobo_Unknown-skels.c line 31
  • #20 ORBit_POAObject_invoke
    at poa.c line 891
  • #21 ORBit_OAObject_invoke
    at orbit-adaptor.c line 116
  • #22 ORBit_small_invoke_adaptor
    at orbit-small.c line 772
  • #23 ORBit_POAObject_handle_request
    at poa.c line 1085
  • #24 ORBit_POA_handle_request
    at poa.c line 1172
  • #25 ORBit_handle_request
    at orbit-adaptor.c line 79
  • #26 giop_connection_handle_input
    at giop-recv-buffer.c line 945
  • #27 linc_connection_io_handler
    at linc-connection.c line 840
  • #28 linc_source_dispatch
    at linc-source.c line 56
  • #29 g_main_dispatch
    at gmain.c line 1617
  • #30 g_main_context_dispatch
    at gmain.c line 2161
  • #31 g_main_context_iterate
    at gmain.c line 2242
  • #32 g_main_loop_run
    at gmain.c line 2462
  • #33 gtk_main
    at gtkmain.c line 915
  • #34 nautilus_view_standard_main_multi
    at nautilus-view-standard-main.c line 229
  • #35 nautilus_view_standard_main
    at nautilus-view-standard-main.c line 312
  • #36 main
    at main.c line 52
  • #37 __libc_start_main
    at ../sysdeps/generic/libc-start.c line 129
  • #0 __wait4
    from /lib/i686/libc.so.6
  • #1 __DTOR_END__
    from /lib/i686/libc.so.6
  • #2 waitpid
    at wrapsyscall.c line 172
  • #3 libgnomeui_segv_handle
    at gnome-ui-init.c line 593
  • #4 pthread_sighandler
    at signals.c line 97
  • #5 <signal handler called>
  • #6 g_data_set_internal
    at gdataset.c line 218
  • #7 g_datalist_id_set_data_full
    at gdataset.c line 378

Comment 1 Anand 2002-03-18 07:49:12 UTC
Oops. Sorry. Please read the first line in the Long Description as:
"The latest Gnome 2.0 was built on a Red Hat Linux 7.1 machine on 
17th Mar 2002". 

Updating the component to 'View as HTML'
Comment 2 Gediminas Paulauskas 2002-03-26 13:25:21 UTC
the backtrace looks very similar (but not the same) as Luis' backtrace
added to bug 73301.

may very well be a gtkhtml2 bug
Comment 3 Luis Villa 2002-03-27 22:11:28 UTC
Hrm... probably bug 73301, but I have no way of knowing. Gedeminas: if
you have a chance, could you look at my comments in the other bug?
Comment 4 John Fleck 2002-04-08 13:49:59 UTC
I can duplicate bug 73301, but I can't duplicate this one. Linux, cvs
build of April 7.
Comment 5 Damon Chaplin 2002-04-23 19:03:45 UTC
I'd guess it is a dup of bug 73301 as well.
Comment 6 Damon Chaplin 2002-04-24 18:44:16 UTC
See the nautilus-gtkhtml-view patch attached to bug 73301.

I don't know why it was unreffing view->details->view. That should
be destroyed normally as part of the widget hierarchy when the control
is destroyed.

It does need to unref the document, though, as it created that and
holds a reference. It also needs to call kill_old_connections() to
stop any async stuff. And it needs to call html_document_clear()
before unreffing the document to workaround problems in gtkhtml2.

With these 2 patches applied it no longer crashes for me.
 (I was getting exactly the same trace as above.)

OK to commit?
Comment 7 Luis Villa 2002-05-01 07:30:32 UTC
Not only a crasher but a patch; not punting.
Comment 8 Damon Chaplin 2002-05-02 02:38:55 UTC
Gediminas has approved the nautilus-gtkhtml patch now, so I'll commit
both of them when I get back.
Comment 9 Damon Chaplin 2002-05-07 21:02:47 UTC
patch applied to cvs. closing.
Comment 10 Anand 2002-07-10 11:02:50 UTC
Verified. Working fine. Closing. Thanks