Bug#358372: eog: Segfaults when opening two jpeg files
Martin Hawlisch
Martin.Hawlisch at gmx.de
Wed Mar 22 13:34:57 UTC 2006
Package: eog
Version: 2.12.3-1
Severity: important
I have two jpeg images that I pass as command line argument to eog. I tried
multiple times and I get different segfaults or errors. I closed and
restarted gdb each time when debugging.
The failure occures when doing:
$ eog w_A0_20.jpg w_A0_21.jpg
All is fine, when opening both images separately:
$ eog w_A0_20.jpg
$ eog w_A0_21.jpg
So this looks like a bug when giving multiple files as command line
argument, the images itself are fine.
You can use another testcase too that workd reliably for me:
cd /tmp/
mkdir test
cd test
wget http://veimages.gsfc.nasa.gov//2430/land_ocean_ice_2048.jpg
wget http://veimages.gsfc.nasa.gov/2433/land_shallow_topo_2048.jpg
eog land*
One error:
$ gdb eog
(gdb) run w_A0_20.jpg w_A0_21.jpg
...
eog-image_load.c
eog-image_load.c
(no debugging symbols found)
(eog:11732): GLib-GObject-WARNING **: cannot register existing type
`GdkPixbufNonAnim'
(eog:11732): GLib-GObject-CRITICAL **: g_object_new: assertion
`G_TYPE_IS_OBJECT (object_type)' failed
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1226806352 (LWP 11735)]
0xb79812f9 in gdk_pixbuf_non_anim_new () from
/usr/lib/libgdk_pixbuf-2.0.so.0
(gdb) bt
#0 0xb79812f9 in gdk_pixbuf_non_anim_new () from
/usr/lib/libgdk_pixbuf-2.0.so.0
#1 0xb7984e7b in gdk_pixbuf_loader_set_size () from
/usr/lib/libgdk_pixbuf-2.0.so.0
#2 0xb6e20145 in ?? () from
/usr/lib/gtk-2.0/2.4.0/loaders/libpixbufloader-jpeg.so
#3 0x08102500 in ?? ()
#4 0x00000000 in ?? ()
(gdb) q
second try:
(gdb) run w_A0_20.jpg w_A0_21.jpg
...
GLib-GObject-ERROR **: g_type_plugin_*() invalidly modified type `EogImage'
aborting...
eog-image_load.c
Program received signal SIGABRT, Aborted.
[Switching to Thread -1237320784 (LWP 11747)]
0xb76237c7 in raise () from /lib/tls/libc.so.6
(gdb) bt
#0 0xb76237c7 in raise () from /lib/tls/libc.so.6
#1 0xb762506b in abort () from /lib/tls/libc.so.6
#2 0xb77bc1a0 in g_logv () from /usr/lib/libglib-2.0.so.0
#3 0xb77bc1d9 in g_log () from /usr/lib/libglib-2.0.so.0
#4 0xb784011f in g_type_class_ref () from /usr/lib/libgobject-2.0.so.0
#5 0xb7826588 in g_object_newv () from /usr/lib/libgobject-2.0.so.0
#6 0xb7826987 in g_object_new_valist () from /usr/lib/libgobject-2.0.so.0
#7 0xb7826b40 in g_object_new () from /usr/lib/libgobject-2.0.so.0
#8 0x080661cd in eog_image_new_uri ()
#9 0x0806bd71 in eog_image_list_add_uris ()
#10 0x080629cf in eog_statusbar_set_progress ()
#11 0x0806dfec in eog_job_call_action ()
#12 0x0806cdc1 in eog_image_list_iter_equal ()
#13 0xb77d0a01 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#14 0xb7737ced in start_thread () from /lib/tls/libpthread.so.0
#15 0xb76cbd7e in clone () from /lib/tls/libc.so.6
(gdb)
third try:
(gdb) run w_A0_20.jpg w_A0_21.jpg
...
(eog:11822): GdkPixbuf-CRITICAL **: gdk_pixbuf_animation_get_width:
assertion `GDK_IS_PIXBUF_ANIMATION (animation)' failed
(eog:11822): GdkPixbuf-CRITICAL **: gdk_pixbuf_animation_get_width:
assertion `GDK_IS_PIXBUF_ANIMATION (animation)' failed
... hundreds of there errors in between ...
(eog:11822): GdkPixbuf-CRITICAL **: gdk_pixbuf_animation_get_static_image:
assertion `GDK_IS_PIXBUF_ANIMATION (animation)' failed
Eog-ERROR **: file eog-image.c: line 827 (eog_image_real_load): assertion
failed: (priv->image != NULL)
aborting...
Program received signal SIGABRT, Aborted.
[Switching to Thread -1235219536 (LWP 11826)]
0xb76957c7 in raise () from /lib/tls/libc.so.6
(gdb) bt
#0 0xb76957c7 in raise () from /lib/tls/libc.so.6
#1 0xb769706b in abort () from /lib/tls/libc.so.6
#2 0xb782e1a0 in g_logv () from /usr/lib/libglib-2.0.so.0
#3 0xb782e1d9 in g_log () from /usr/lib/libglib-2.0.so.0
#4 0xb782e251 in g_assert_warning () from /usr/lib/libglib-2.0.so.0
#5 0x08068505 in eog_image_load ()
#6 0x08062a39 in eog_statusbar_set_progress ()
#7 0x0806dfec in eog_job_call_action ()
#8 0x0806cdc1 in eog_image_list_iter_equal ()
#9 0xb7842a01 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#10 0xb77a9ced in start_thread () from /lib/tls/libpthread.so.0
#11 0xb773dd7e in clone () from /lib/tls/libc.so.6
(gdb)
One more:
(gdb) run w_A0_20.jpg w_A0_21.jpg
...
eog-image_load.c
eog-image_load.c
(no debugging symbols found)
(eog:11860): GdkPixbuf-CRITICAL **: _gdk_pixbuf_load_module_unlocked:
assertion `image_module->module == NULL' failed
load success: 0
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1237320784 (LWP 11864)]
0x08067d84 in eog_image_load ()
(gdb) bt
#0 0x08067d84 in eog_image_load ()
#1 0x08062a39 in eog_statusbar_set_progress ()
#2 0x0806dfec in eog_job_call_action ()
#3 0x0806cdc1 in eog_image_list_iter_equal ()
#4 0xb77b4a01 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#5 0xb771bced in start_thread () from /lib/tls/libpthread.so.0
#6 0xb76afd7e in clone () from /lib/tls/libc.so.6
(gdb)
One more try:
(eog:11877): GLib-GObject-WARNING **: cannot register existing type
`GdkPixbufLoader'
(eog:11877): GLib-GObject-CRITICAL **: g_object_new: assertion
`G_TYPE_IS_OBJECT (object_type)' failed
(eog:11877): GLib-GObject-WARNING **: invalid (NULL) pointer instance
(eog:11877): GLib-GObject-CRITICAL **: g_signal_connect_object: assertion
`G_TYPE_CHECK_INSTANCE (instance)' failed
(eog:11877): GdkPixbuf-CRITICAL **: gdk_pixbuf_loader_write: assertion
`loader != NULL' failed
(eog:11877): GdkPixbuf-CRITICAL **: gdk_pixbuf_loader_close: assertion
`loader != NULL' failed
(eog:11877): GLib-GObject-CRITICAL **: g_object_unref: assertion
`G_IS_OBJECT (object)' failed
load success: 0
(no debugging symbols found)
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread -1227572304 (LWP 11880)]
0x08067d84 in eog_image_load ()
(gdb) bt
#0 0x08067d84 in eog_image_load ()
#1 0x08062a39 in eog_statusbar_set_progress ()
#2 0x0806dfec in eog_job_call_action ()
#3 0x0806cdc1 in eog_image_list_iter_equal ()
#4 0xb778da01 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#5 0xb76f4ced in start_thread () from /lib/tls/libpthread.so.0
#6 0xb7688d7e in clone () from /lib/tls/libc.so.6
(gdb)
And one more:
GLib-GObject-ERROR **: file gtype.c: line 1773 (type_class_init_Wm):
assertion failed: (node->is_classed && node->data &&
node->data->class.class_size && !node->data->class.class &&
node->data->class.init_state == UNINITIALIZED)
aborting...
Program received signal SIGABRT, Aborted.
[Switching to Thread -1237320784 (LWP 11941)]
0xb76887c7 in raise () from /lib/tls/libc.so.6
(gdb) bt
#0 0xb76887c7 in raise () from /lib/tls/libc.so.6
#1 0xb768a06b in abort () from /lib/tls/libc.so.6
#2 0xb78211a0 in g_logv () from /usr/lib/libglib-2.0.so.0
#3 0xb78211d9 in g_log () from /usr/lib/libglib-2.0.so.0
#4 0xb7821251 in g_assert_warning () from /usr/lib/libglib-2.0.so.0
#5 0xb78a4d55 in g_type_class_ref () from /usr/lib/libgobject-2.0.so.0
#6 0xb788b588 in g_object_newv () from /usr/lib/libgobject-2.0.so.0
#7 0xb788b987 in g_object_new_valist () from /usr/lib/libgobject-2.0.so.0
#8 0xb788bb40 in g_object_new () from /usr/lib/libgobject-2.0.so.0
#9 0x080661cd in eog_image_new_uri ()
#10 0x0806bd71 in eog_image_list_add_uris ()
#11 0x080629cf in eog_statusbar_set_progress ()
#12 0x0806dfec in eog_job_call_action ()
#13 0x0806cdc1 in eog_image_list_iter_equal ()
#14 0xb7835a01 in g_static_private_free () from /usr/lib/libglib-2.0.so.0
#15 0xb779cced in start_thread () from /lib/tls/libpthread.so.0
#16 0xb7730d7e in clone () from /lib/tls/libc.so.6
(gdb)
Cheers, Martin.
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-686-smp
Locale: LANG=de_DE at euro, LC_CTYPE=de_DE at euro (charmap=ISO-8859-15)
Versions of packages eog depends on:
ii gconf2 2.12.1-12 GNOME configuration database
syste
ii libart-2.0-2 2.3.17-1 Library of functions for 2D
graphi
ii libc6 2.3.6-4 GNU C Library: Shared libraries
an
ii libexif12 0.6.13-4 library to parse EXIF files
ii libgconf2-4 2.12.1-12 GNOME configuration database
syste
ii libglade2-0 1:2.5.1-2 library to load .glade files at
ru
ii libglib2.0-0 2.10.1-2 The GLib library of C routines
ii libgnome2-0 2.12.0.1-5 The GNOME 2 library - runtime
file
ii libgnomecanvas2-0 2.14.0-1 A powerful object-oriented
display
ii libgnomeprint2.2-0 2.12.1-3 The GNOME 2.2 print
architecture -
ii libgnomeprintui2.2-0 2.12.1-2 GNOME 2.2 print architecture
User
ii libgnomeui-0 2.12.1-1 The GNOME 2 libraries (User
Interf
ii libgnomevfs2-0 2.12.2-7 GNOME virtual file-system
(runtime
ii libgtk2.0-0 2.8.13-1 The GTK+ graphical user
interface
ii libjpeg62 6b-12 The Independent JPEG Group's
JPEG
ii libpango1.0-0 1.12.0-2 Layout and rendering of
internatio
ii libpopt0 1.7-5 lib for parsing cmdline
parameters
ii libx11-6 6.9.0.dfsg.1-4 X Window System protocol client
li
Versions of packages eog recommends:
ii librsvg2-common 2.12.7-5+b1 SAX-based renderer library for
SVG
-- no debconf information
--
Echte DSL-Flatrate dauerhaft für 0,- Euro*!
"Feel free" mit GMX DSL! http://www.gmx.net/de/go/dsl
More information about the Pkg-gnome-maintainers
mailing list