I updated to -proposed, ran the looping eog test case and saw the
following two crashes but did not see the gdk_x11_window_get_xid()
crash. So these crashes may or may not be related to this particular
bug.

The first crash happens if you have an empty sub directory, eg:

$ ls -R
.:
a/  b/

./a:
test.jpg

./b:

$ while true; do eog "$(find . -type d|sort -R |head -1|cut -f 1)"; done

(gdb) bt
#0  0x00007ffff6592f98 in gtk_tree_model_get_valist (tree_model=0x45da810, 
iter=0x7fffffffdd40, 
    var_args=0x7fffffffdc28) at 
/build/buildd/gtk+3.0-3.2.0/./gtk/gtktreemodel.c:1768
#1  0x00007ffff659327c in gtk_tree_model_get (tree_model=0x45da810, 
iter=0x7fffffffdd40)
    at /build/buildd/gtk+3.0-3.2.0/./gtk/gtktreemodel.c:1730
#2  0x0000000000427111 in eog_list_store_thumbnail_set (store=0x45da810, 
iter=0x7fffffffdd40) at eog-list-store.c:863
#3  0x00000000004335a9 in image_thumb_changed_cb (image=0x7fffe5403330, 
data=<optimized out>) at eog-window.c:802
#4  0x0000000000433748 in eog_window_display_image (window=0x7c1640, 
image=0x7fffe5403330) at eog-window.c:891
#5  0x00000000004342f5 in eog_job_load_cb (job=0x7fffe5303500, data=<optimized 
out>) at eog-window.c:1334
#6  0x00007ffff49670a4 in g_closure_invoke (closure=0x45cefe0, 
return_value=0x0, n_param_values=1, 
    param_values=0x7fffe54220a0, invocation_hint=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gclosure.c:774
#7  0x00007ffff497902a in signal_emit_unlocked_R (node=<optimized out>, 
detail=0, instance=0x7fffe5303500, 
    emission_return=0x0, instance_and_params=0x7fffe54220a0) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3272
#8  0x00007ffff49826b1 in g_signal_emit_valist (instance=<optimized out>, 
signal_id=<optimized out>, 
    detail=<optimized out>, var_args=<optimized out>) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3003
#9  0x00007ffff4982852 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3060
#10 0x00000000004238ac in notify_finished (job=0x7fffe5303500) at 
eog-job-queue.c:66
#11 0x00007ffff44a1a5d in g_main_dispatch (context=0x6ca3a0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:2441
#12 g_main_context_dispatch (context=0x6ca3a0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3011
#13 0x00007ffff44a2258 in g_main_context_iterate (context=0x6ca3a0, 
block=<optimized out>, dispatch=1, 
    self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3089
#14 0x00007ffff44a2792 in g_main_loop_run (loop=0x7a8170) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3297
#15 0x00007ffff64a0e1d in gtk_main () at 
/build/buildd/gtk+3.0-3.2.0/./gtk/gtkmain.c:1367
#16 0x00007ffff5c04a4e in g_application_run (application=0x7a3e60, 
argc=<optimized out>, argv=0x7fffffffe588)
    at /build/buildd/glib2.0-2.30.0/./gio/gapplication.c:1323
#17 0x000000000041ce8f in main (argc=1, argv=0x7fffffffe588) at main.c:168

The second crash happened when a lot of windows were opened by the test
case, and I tried to close some of them.

(gdb) bt
#0  gdk_screen_get_monitor_geometry (screen=0x0, monitor_num=-1, 
dest=0x7fffffffde40)
    at /build/buildd/gtk+3.0-3.2.0/./gdk/gdkscreen.c:769
#1  0x000000000043090e in eog_window_obtain_desired_size (image=<optimized 
out>, width=4000, height=3000, 
    window=0xed26b0) at eog-window.c:1225
#2  0x00007ffff49670a4 in g_closure_invoke (closure=0x7fffe453eff0, 
return_value=0x0, n_param_values=3, 
    param_values=0x6d01540, invocation_hint=<optimized out>) at 
/build/buildd/glib2.0-2.30.0/./gobject/gclosure.c:774
#3  0x00007ffff497902a in signal_emit_unlocked_R (node=<optimized out>, 
detail=0, instance=0x7fffe45a0400, 
    emission_return=0x0, instance_and_params=0x6d01540) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3272
#4  0x00007ffff49826b1 in g_signal_emit_valist (instance=<optimized out>, 
signal_id=<optimized out>, 
    detail=<optimized out>, var_args=<optimized out>) at 
/build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3003
#5  0x00007ffff4982852 in g_signal_emit (instance=<optimized out>, 
signal_id=<optimized out>, detail=<optimized out>)
    at /build/buildd/glib2.0-2.30.0/./gobject/gsignal.c:3060
#6  0x000000000041e11e in do_emit_size_prepared_signal (img=<optimized out>) at 
eog-image.c:481
#7  0x00007ffff60ed32f in gdk_threads_dispatch (data=0x6c99180) at 
/build/buildd/gtk+3.0-3.2.0/./gdk/gdk.c:754
#8  0x00007ffff44a1a5d in g_main_dispatch (context=0x6ca3a0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:2441
#9  g_main_context_dispatch (context=0x6ca3a0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3011
#10 0x00007ffff44a2258 in g_main_context_iterate (context=0x6ca3a0, 
block=<optimized out>, dispatch=1, 
    self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3089
#11 0x00007ffff44a2792 in g_main_loop_run (loop=0x79dab0) at 
/build/buildd/glib2.0-2.30.0/./glib/gmain.c:3297
#12 0x00007ffff64a0e1d in gtk_main () at 
/build/buildd/gtk+3.0-3.2.0/./gtk/gtkmain.c:1367
#13 0x00007ffff5c04a4e in g_application_run (application=0x79e830, 
argc=<optimized out>, argv=0x7fffffffe588)
    at /build/buildd/glib2.0-2.30.0/./gio/gapplication.c:1323
#14 0x000000000041ce8f in main (argc=1, argv=0x7fffffffe588) at main.c:168

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/827958

Title:
  eog crashed with SIGSEGV in gdk_x11_window_get_xid()

To manage notifications about this bug go to:
https://bugs.launchpad.net/libgrip/+bug/827958/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to