Hi, I don't have too much time to debug this right (sorry), so I'm sending it here. Double-click on the about:splash page a few times (especially at the very bottom), and you'll get this crash easily enough: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 16384 (LWP 23106)] 0x08058366 in a_Dw_ext_iterator_compare (eit1=0x0, eit2=0x0) at dw_ext_iterator.c:334 334 while (eit1->stack[nea]->widget == eit2->stack[nea]->widget) { Here is the backtrace: (gdb) bt #0 0x08058366 in a_Dw_ext_iterator_compare (eit1=0x0, eit2=0x0) at dw_ext_iterator.c:334 #1 0x08067184 in Selection_adjust_selection (selection=0x80c0f68, it=0x81004a8, char_pos=4) at selection.c:320 #2 0x080670b2 in a_Selection_button_motion (selection=0x80c0f68, it=0x81004a8, char_pos=4, link=-1, event=0x0, within_content=0) at selection.c:268 #3 0x0805f68e in Dw_page_send_selection_event (page=0x80e4ad0, fn=0x806707c <a_Selection_button_motion>, x=355, y=5, event=0x0) at dw_page.c:1493 #4 0x0805f74d in Dw_page_motion_notify (widget=0x80e4ad0, x=355, y=5, event=0x80c6be8) at dw_page.c:1538 #5 0x0806502b in Dw_widget_mouse_event (widget=0x80e4ad0, viewwidget=0x80c0e80, x=581, y=127, event=0x80c6be8) at dw_widget.c:741 #6 0x0805b31c in Dw_gtk_viewport_mouse_event (widget=0x80c0e80, x=581, y=127, event=0x80c6be8) at dw_gtk_viewport.c:358 #7 0x0805b46e in Dw_gtk_viewport_motion_notify (widget=0x80c0e80, event=0x80c6be8) at dw_gtk_viewport.c:404 #8 0x40157e3f in gtk_marshal_BOOL__POINTER () from /usr/lib/libgtk-1.2.so.0 #9 0x40187013 in gtk_signal_set_funcs () from /usr/lib/libgtk-1.2.so.0 #10 0x401850b3 in gtk_signal_emit () from /usr/lib/libgtk-1.2.so.0 #11 0x401bbacb in gtk_widget_event () from /usr/lib/libgtk-1.2.so.0 #12 0x40157d85 in gtk_propagate_event () from /usr/lib/libgtk-1.2.so.0 #13 0x40156eee in gtk_main_do_event () from /usr/lib/libgtk-1.2.so.0 #14 0x40205457 in gdk_wm_protocols_filter () from /usr/lib/libgdk-1.2.so.0 #15 0x402364d8 in g_get_current_time () from /usr/lib/libglib-1.2.so.0 #16 0x40236ae3 in g_get_current_time () from /usr/lib/libglib-1.2.so.0 #17 0x40236c7c in g_main_run () from /usr/lib/libglib-1.2.so.0 #18 0x401567e7 in gtk_main () from /usr/lib/libgtk-1.2.so.0 #19 0x080680ef in main (argc=1, argv=0xbffff9d4) at dillo.c:292 The following test fixes this for me, without any apparent side-effects. I'm still not very familiar with the selection code yet, so it's just a suggestion for Sebastian.. this might be breaking something else. The little patch: ---------------------------------------------------------------------- diff -pru dillo/src/selection.c dillo.new.my/src/selection.c --- dillo/src/selection.c Mon May 5 23:11:20 2003 +++ dillo.new.my/src/selection.c Mon May 5 23:29:09 2003 @@ -314,6 +314,11 @@ static void Selection_adjust_selection ( gint new_to_char, cmp_old, cmp_new, cmp_diff, len; gboolean brute_highlighting = FALSE; + if (!selection->to || !selection->from) { + // something's wrong? a double-click maybe? + return; + } + new_to = a_Dw_ext_iterator_new_variant (selection->to, it); new_to_char = Selection_correct_char_pos (new_to, char_pos); ---------------------------------------------------------------------- best regards, -- Livio B. Soares