EOG crashes when stopping slideshow

Bug #43322 reported by Emmanuel Touzery
24
Affects Status Importance Assigned to Milestone
Eye of GNOME
Fix Released
Critical
Feisty Backports
Invalid
Undecided
Unassigned
eog (Ubuntu)
Fix Released
Medium
Ubuntu Desktop Bugs
Nominated for Dapper by Scott Kitterman
Nominated for Edgy by Scott Kitterman
Nominated for Feisty by Scott Kitterman

Bug Description

there is a very big bug in EOG 2.14.1 present in dapper: start a slideshow, then cancel it using ESCAPE. you'll likely trigger a crash.
according to the upstream bug report it's mostly when you cancel when a new image just appeared in the slideshow. but for me it's all the time.

i think the bug is very critical. dapper doesn't look good at all if the image viewer crashes just by doing a slideshow. for now upstream didn't fix it yet.
this is a request that ubuntu developers consider distributing the fix in dapper as soon as it's applied in CVS (assuming it will be applied on time), even if EOG developers don't make a release, and even if it's quite late in dapper schedule.

i think it's a very serious bug like the nautilus crash on right click "make archive" was in breezy, that required to upload the fix in breezy-updates since so many people where hitting it.

upstream bug:
http://bugzilla.gnome.org/show_bug.cgi?id=320206

Revision history for this message
Sebastien Bacher (seb128) wrote :

Thank you for pointing it. We will backport the patch if upstream get one and it's easy enough to be used for dapper

Changed in eog:
assignee: nobody → desktop-bugs
status: Unconfirmed → Confirmed
Revision history for this message
Emmanuel Touzery (emmanuel-touzery) wrote :

I posted a patch that should fix the issue on the upstream bug at:
http://bugzilla.gnome.org/attachment.cgi?id=64955&action=view

explanation for the patch:
http://bugzilla.gnome.org/show_bug.cgi?id=320206#c13

More explanations:
http://bugzilla.gnome.org/show_bug.cgi?id=320206#c8
http://bugzilla.gnome.org/show_bug.cgi?id=320206#c15

If upstream won't react on time for dapper, you could maybe consider including it in dapper anyway. Your call obviously...

Revision history for this message
Emmanuel Touzery (emmanuel-touzery) wrote :

please consider applying the patch maybe... upstream doesn't react but i think the bug is serious enough to consider that.

the patch is small:

 libeog/eog-full-screen.c | 41 +++++++++++++++++++++++++++++++++++++++++
 libeog/eog-full-screen.h | 3 +++
 libeog/eog-job.c | 10 ++++++++++
 libeog/eog-job.h | 1 +
 shell/eog-window.c | 1 +
 5 files changed, 56 insertions(+)

and that is with 10 lines of comments inside.
i think the patch is really trivial, too. and you can immediately see that it's not malicious.

that bug doesn't cause dataloss so it's not catastrophic. but it really gives a bad image of linux & ubuntu that such a trivial thing causes a crash in my opinion.
it was not so bad in breezy because it was hard to make a slideshow in EOG (you had to "open directory"), now that it's much easier i think many people will notice that bug. i mean, who doesn't have a digital camera nowadays?? everybody wants to see slideshow of their pictures.

that means once more the best way to have slideshows will be gthumb, and for that you must explain to people that they must learn another way of browsing their folders, which is annoying, esp. for beginners.

but it's your call... i won't comment on this bug anymore unless upstream reacts...

Revision history for this message
Tormod Volden (tormodvolden) wrote :

This also happens when using fullscreen (without using slideshow) - see duplicate bug. Especially since EOG is the default action when users double-click on an image file, this crasher is really bad.

For many regular users, watching the digital photos on their hard drive is core functionality. If EOG won't be fixed, please consider shipping e.g. gthumb as the default image viewer.

Revision history for this message
Sebastien Bacher (seb128) wrote :

Emmanuel, thank you for the interest on that and the patch. I think you made your point clear from the fix description than you would like to get it fixed for dapper, saying it again and again will not make a difference. I'm letting some days to upstream to comment on the patch, then know the code better and if they do we can focus on some other bugs instead. We will evaluate the patch if they don't comment on it soon

Revision history for this message
Sebastien Bacher (seb128) wrote :

This upload has the patch from upstream:

 eog (2.14.1-0ubuntu2) dapper; urgency=low
 .
   * debian/patches/04_no_profile_message_on_command_line.patch:
     - stop flooding the command line with messages "No profile, not correcting"
   * debian/patches/05_from_cvs_respect_save_to_disk_lockdown_key.patch:
     - patch from CVS, make it respect the save_to_disk lockdown gconf key
       (GNOME: #341862)
   * debian/patches/06_from_cvs_partial_fix_slideshow_canceling_crasher.patch:
     - patch from CVS, partial fix for the crasher when canceling slideshow
       or fullscreen presentation (Ubuntu: #43322)
   * debian/patches/07_from_cvs_set_progressbar_height.patch:
     - patch from CVS, set a fixed height for the progressbar so there is no
       need to rezoom after loading

Revision history for this message
Tormod Volden (tormodvolden) wrote :

2.14.1-0ubuntu2 certainly does not fix the fullscreen crasher that I describe in duplicate(?) bug #44280.

Revision history for this message
Sebastien Bacher (seb128) wrote :

That's why the bug has not been closed as fixed, if you want details about it the GNOME page pointed explain that

Revision history for this message
istoyanov (istoyanov) wrote :

I can confirm the (random, not constantly reproducible) crashes with eog 2.14.3-0ubuntu1, running an up-to-date Ubuntu 6.06 LTS.

NOTE: I don't use the slideshow feature, but always view the pictures in fulscreen mode. The crash happens sometimes when I exit the fullscreen mode via the ESC button.

Here is the backtrace from the bug-buddy output:
Backtrace was generated from '/usr/bin/eog'

(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".

Revision history for this message
Daniel Holbach (dholbach) wrote :

Thanks for trying to get a backtrace - it's not complete though - could you try again?

Changed in eog:
status: Confirmed → Needs Info
Revision history for this message
Tormod Volden (tormodvolden) wrote :

wrt setting this bug to NeedsInfo: there are already debug backtraces in the duplicate bug #44280.

Revision history for this message
Sebastien Bacher (seb128) wrote :

upstream bug has a debug backtrace too

Changed in eog:
status: Needs Info → Confirmed
Revision history for this message
istoyanov (istoyanov) wrote :
Download full text (5.2 KiB)

Today, viewing an image collection I've got EOG crashing again on fulscreen exit, and here is the more complete backtrace pasted from bug-buddy:

Backtrace was generated from '/usr/bin/eog'

(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1224763712 (LWP 5963)]
[New Thread -1263871056 (LWP 5965)]
[New Thread -1226187856 (LWP 5964)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
0xffffe410 in __kernel_vsyscall ()
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb777648b in __waitpid_nocancel ()
   from /lib/tls/i686/cmov/libpthread.so.0
#2 0xb7d778e6 in libgnomeui_module_info_get ()
   from /usr/lib/libgnomeui-2.so.0
#3 <signal handler called>
#4 0x00000000 in ?? ()
#5 0xb778c1a6 in cmsCloseProfile () from /usr/lib/liblcms.so.1
#6 0x00010003 in ?? ()
#7 0x0000053f in ?? ()
#...

Read more...

Revision history for this message
Tormod Volden (tormodvolden) wrote :

To easily reproduce the crash run "eog /usr/share/example-content/" and press (in rapid succesion): F11 - PgDn - PgDn - PgUp - F11

Revision history for this message
istoyanov (istoyanov) wrote :
Download full text (6.3 KiB)

I can confirm that the proposed method reproduces the discussed EOG crash successfully.

Here is a backtrace from the induced (via a fast F11 - PgDn - PgDn - PgUp - F11) crash:

Backtrace was generated from '/usr/bin/eog'

(no debugging symbols found)
Using host libthread_db library "/lib/tls/i686/cmov/libthread_db.so.1".
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
[Thread debugging using libthread_db enabled]
[New Thread -1224948032 (LWP 5254)]
[New Thread -1264071760 (LWP 5256)]
[New Thread -1226372176 (LWP 5255)]
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
0xffffe410 in __kernel_vsyscall ()
#0 0xffffe410 in __kernel_vsyscall ()
#1 0xb774948b in __waitpid_nocancel () from /lib/tls/i686/cmov/libpthread.so.0
#2 0xb7d4a8e6 in libgnomeui_module_info_get () from /usr/lib/libgnomeui-2.so.0
#3 <signal handler called>
#4 0x0806b596 in eog_image_cache_add ()
#5 0x0806487f in eog_full_screen_get_type ()
#6 0x0806e380 in eog_jo...

Read more...

Revision history for this message
istoyanov (istoyanov) wrote :

Although I'm not sure if this is needed, here I post the output from the terminal from where I ran EOG to reproduce the bug:

istoyanov@blackbox:~/Desktop/images$ eog 2006-09-15/
JPEG is sRGB
JPEG is sRGB
JPEG is sRGB
JPEG is sRGB
JPEG is sRGB
JPEG is sRGB

(eog:5254): GLib-GObject-WARNING **: invalid uninstantiatable type `<invalid>' in cast to `EogFullScreen'

(eog:5254): Eog-CRITICAL **: eog_image_list_iter_valid: assertion `EOG_IS_IMAGE_LIST (list)' failed

(eog:5254): Eog-CRITICAL **: eog_image_has_data: assertion `EOG_IS_IMAGE (img)' failed

(eog:5254): GLib-GObject-CRITICAL **: g_object_get_qdata: assertion `G_IS_OBJECT (object)' failed

(eog:5254): Eog-CRITICAL **: eog_image_list_iter_valid: assertion `EOG_IS_IMAGE_LIST (list)' failed

(eog:5254): Eog-CRITICAL **: eog_image_data_ref: assertion `EOG_IS_IMAGE (img)' failed

(eog:5254): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed

(eog:5254): Eog-CRITICAL **: eog_image_has_data: assertion `EOG_IS_IMAGE (img)' failed

(eog:5254): GLib-GObject-CRITICAL **: g_object_set_qdata: assertion `G_IS_OBJECT (object)' failed

(eog:5254): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed

(eog:5254): Eog-CRITICAL **: eog_image_load: assertion `EOG_IS_IMAGE (img)' failed
+----------------------------------------------+

You may notice that I couldn't bring EOG to crash from the first attempt, but after I managed to apply the suggested keystrokes fast enough the crash happened as expected.

Revision history for this message
Tormod Volden (tormodvolden) wrote :

Are we gonna get eog-ng in feisty? From http://bugzilla.gnome.org/show_bug.cgi?id=320206#c40 I understand that upstream has given up on this bug, deserted eog and focus on eog-ng instead.

(OMG this bug is embarrassing each time I show Ubuntu to people.)

Revision history for this message
Sebastien Bacher (seb128) wrote : Re: [Bug 43322] Re: EOG crashes when stopping slideshow

Le dimanche 26 novembre 2006 à 18:58 +0000, Tormod Volden a écrit :
> Are we gonna get eog-ng in feisty?

Do you know how usable eog-ng is at the moment and if upstream would be
happy with having it shipped by distributions now?

Revision history for this message
Tormod Volden (tormodvolden) wrote :

From http://live.gnome.org/EyeOfGnome/EogNg:
"Our goal is having eog-ng branch merged in HEAD in the beginning of 2.20 development cycle on March 15th 2007. In terms of components, we must have a stable version of Core, Printing and Website at this stage."

I am not so sure this will be ready in time for feisty. OTOH I would very much like to see a fix in eog that can be backported to edgy and dapper. I will try out eog-ng anyway.

Revision history for this message
Sebastien Bacher (seb128) wrote :

fixed upstream now

Changed in eog:
status: Confirmed → Fix Committed
Revision history for this message
Sebastien Bacher (seb128) wrote :
Download full text (4.0 KiB)

This upload fixes the bug:

 eog (2.19.1-0ubuntu1) gutsy; urgency=low
 .
   * New upstream version:
     - Complete rewrite of application core which means more stable,
       maintanable, faster image viewer for GNOME
     - Editable application toolbar
     - New image collection pane with on-demand thumbnail loading
       (Ubuntu: #37429)
     - Support for setting image collection position (left, right, top,
       bottom) and wether it's resizable or not. No preference UI yet
     - New image properties dialog which replaces the image info sidepane
     - Single instance D-Bus-based activation support
     - Revamped error/warning UI
     - "Open with" support to quickly open images on other applications
     - Mouse scrollwheel improvements: HIG compliancy and zoom factor setting
     - Migration to GtkRecent
     - UI polishing on multiple images save as dialog
     - Command line options for fullscreen, slideshow and image collection
       disabling
     - Rotate work in fullscreen (Ubuntu: #31783)
     - Don't crash when cancelling a slideshow load (Ubuntu: #43322)
     - Trash work on different volume (Ubuntu: #42571)
     - Display the correct window icon (Ubuntu: #43609)
     - Don't write wrong rotation information (Ubuntu: #88248)
     - Enhanced shortcuts work (Ubuntu: #44343)
     Bug fixes:
     - #377123, [eog-ng] implement EogJobSave
     - #319859, "open image with" function
     - #334321, Should be possible move the collection in EOG
     - #316175, EOG gives no error upon opening non image files
     - #432439, Run gtk-update-icon-cache in uninstall-hook
     - #429156, [patch] "Save As" dialog for multiple files is way too ugly
     - #427154, Some strings are not translated in save-as-multiple dialog.
     - #419756, Slideshow background should be black.
     - #404708, eog crashed with SIGSEGV in g_closure_invoke()
     - #404126, Convert debug messages to eog_debug_message
     - #401939, [eog-ng] Remove leaftag support.
     - #399333, EOG-NG crash while opening Print dialog
     - #398250, build bug: missing symbols from libpangoft2
     - #389314, eog should use stock_print-setup from g-i-t for the
                "Page setup..." action
     - #376513, TRACKER: command-line options
     - #355858, switching image forward and back quickly can display wrong image
     - #351040, [eog-ng] use GtkRecent
     - #344140, [eog-ng] remove duplicate code in fullscreen-code
     - #342817, crash trying to view profile image
     - #342103, [patch] [eog-ng] update about dialog
     - #341935, Should not zoom with mouse wheel
     - #341831, [eog-ng] memory usage increases when switching fastly between
                images
     - #341600, [eog-ng] EOG eats a lot o CPU when inactive
     - #340957, Filenames containing numbers are not properly sorted (as how
                nautilus does)
     - #335689, Middle mouse drag should also scroll
     - #327424, progress bar changes view size which forces re-zooming of image
     - #322057, eog print output is corrupt
     - #305823, The rotate buttons on the toolbar are blurred
     - #404907, [eog-ng] Crash when openi...

Read more...

Changed in eog:
status: Fix Committed → Fix Released
Changed in eog:
status: Confirmed → Fix Released
Revision history for this message
Tormod Volden (tormodvolden) wrote :

I am unsure whether this should be SRU'ed or backported, but I guess "not crashing all the time" can qualify as "shiny new functionality". Anyway, the Gutsy version builds fine in Feisty and works great.

Revision history for this message
Scott Kitterman (kitterman) wrote :

Since it's crash, it qualifies for an SRU with just the patch for the crash. Marking backports invalid as backports is not for fixing bugs.

Changed in feisty-backports:
status: New → Invalid
Revision history for this message
Scott Kitterman (kitterman) wrote :

Nominating for SRU since it's a crasher and there is a fix available.

Revision history for this message
Tormod Volden (tormodvolden) wrote :

I had the impression it would be difficult to fish out "just the patch", since upstream preferred to rewrite the core... But please do something, because it's a shame for Feisty :)

Revision history for this message
Sebastien Bacher (seb128) wrote :

The gutsy version is a rewrital of the code which was going on for some cycles, not something which can be backported to the stable one easily

Revision history for this message
Tormod Volden (tormodvolden) wrote :

There are lots of new features in the Gutsy version that would warrant a backport to Feisty. IMHO not crashing would be a reason enough, but this seems like an example where the Ubuntu policies do not work so well.

Changed in eog:
importance: Unknown → Critical
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.