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 313003 - crash when deleting a file while it is viewed in eog
crash when deleting a file while it is viewed in eog
Status: RESOLVED FIXED
Product: eog
Classification: Core
Component: image viewer
2.11.x
Other Linux
: Normal major
: ---
Assigned To: EOG Maintainers
EOG Maintainers
: 166681 319325 319921 321250 338702 338800 401832 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2005-08-09 13:16 UTC by Mart Raudsepp
Modified: 2007-01-29 08:46 UTC
See Also:
GNOME target: ---
GNOME version: 2.11/2.12


Attachments
Fix the image remove problem. (2.71 KB, patch)
2005-10-13 01:39 UTC, Lucas Rocha
none Details | Review

Description Mart Raudsepp 2005-08-09 13:16:20 UTC
Version details: 2.11.90

* Start eog from command line with a directory argument to a directory with images
* Select and view a deletable image
* Delete the image from the filesystem with a different tool
* If the image is currently viewed, a crash happens. If it is not, it's simply
removed from the directory thumbnails

Before crash this assert happens:
** ERROR **: file eog-window.c: line 2988 (handle_image_selection_changed):
assertion failed: (EOG_IS_IMAGE (image))
aborting...

Backtrace:
  • #0 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #1 g_log
    from /usr/lib/libglib-2.0.so.0
  • #2 g_assert_warning
    from /usr/lib/libglib-2.0.so.0
  • #3 eog_window_has_contents
  • #4 g_cclosure_marshal_VOID__VOID
    from /usr/lib/libgobject-2.0.so.0
  • #5 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #6 g_signal_has_handler_pending
    from /usr/lib/libgobject-2.0.so.0
  • #7 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #9 g_cclosure_marshal_VOID
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_signal_has_handler_pending
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #14 eog_image_list_get_iter_by_pos
  • #15 _gnome_vfs_monitor_do_cancel
    from /usr/lib/libgnomevfs-2.so.0
  • #16 g_child_watch_add
    from /usr/lib/libglib-2.0.so.0
  • #17 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #18 g_main_context_acquire
    from /usr/lib/libglib-2.0.so.0
  • #19 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #20 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #21 main

Comment 1 Christian Kirbach 2005-08-09 13:50:06 UTC
unique stack trace.
Can you compile with debugging symbols, please, and repost a more detailed 
trace?
Comment 2 Mart Raudsepp 2005-08-10 00:29:31 UTC


  • #0 g_logv
    from /usr/lib/libglib-2.0.so.0
  • #1 g_log
    from /usr/lib/libglib-2.0.so.0
  • #2 g_assert_warning
    from /usr/lib/libglib-2.0.so.0
  • #3 handle_image_selection_changed
    at eog-window.c line 2988
  • #4 g_cclosure_marshal_VOID__VOID
    from /usr/lib/libgobject-2.0.so.0
  • #5 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #6 g_signal_has_handler_pending
    from /usr/lib/libgobject-2.0.so.0
  • #7 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #8 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #9 g_cclosure_marshal_VOID
    from /usr/lib/libgobject-2.0.so.0
  • #10 g_closure_invoke
    from /usr/lib/libgobject-2.0.so.0
  • #11 g_signal_has_handler_pending
    from /usr/lib/libgobject-2.0.so.0
  • #12 g_signal_emit_valist
    from /usr/lib/libgobject-2.0.so.0
  • #13 g_signal_emit
    from /usr/lib/libgobject-2.0.so.0
  • #14 vfs_monitor_dir_cb
    at eog-image-list.c line 418
  • #15 _gnome_vfs_monitor_do_cancel
    from /usr/lib/libgnomevfs-2.so.0
  • #16 g_child_watch_add
    from /usr/lib/libglib-2.0.so.0
  • #17 g_main_context_dispatch
    from /usr/lib/libglib-2.0.so.0
  • #18 g_main_context_acquire
    from /usr/lib/libglib-2.0.so.0
  • #19 g_main_loop_run
    from /usr/lib/libglib-2.0.so.0
  • #20 gtk_main
    from /usr/lib/libgtk-x11-2.0.so.0
  • #21 main
    at main.c line 716


"No symbol table info available." strings commented out for frames that spammed
it with "bt full".

Seems to be a race condition? Having general gnome-vfs problems on my system
too. Will try to also fix those and see how this one fares then.
Comment 3 Mart Raudsepp 2005-08-10 00:33:18 UTC
(gdb) frame 3
  • #3 handle_image_selection_changed
    at eog-window.c line 2988

(gdb) ptype image
type = struct _EogImage {
    GObject parent;
    EogImagePrivate *priv;
} *

(gdb) print image->parent
$1 = {g_type_instance = {g_class = 0x83060}, ref_count = 3074105344, qdata =
0xb7f6b3c0}
(gdb) print image->parent->ref_count
$2 = 3074105344

(gdb) print image->priv->uri->text
Cannot access memory at address 0x6c

(gdb) print image->priv->width
$5 = 2152
(gdb) print image->priv->height
$6 = -3086080
Comment 4 Christian Kirbach 2005-08-10 08:51:06 UTC
Looks quite detailed.Thanks.
Confirming so devs will take a look.
Comment 5 Christian Kirbach 2005-08-11 21:56:54 UTC
On the other hand .. I cannot reproduce from CVS.

Are you using famd or gamin?

I use gamin
Comment 6 John Spray 2005-08-18 22:59:13 UTC
Can't reproduce with CVS, also with gamin.

Behaviour I see is: image remains in eog list after being deleted.  If it had
been viewed prior to being deleted, it remains loaded even if I view another
image and then go back to it.
Comment 7 Mart Raudsepp 2005-08-19 01:06:27 UTC
I do not have gamin, so probably famd.
In my case if I delete a file that is in the list, it disappears nicely from the
list (the thumbnail on the bottom pane), but if it's currently viewed, then the
crash.
Comment 8 Mart Raudsepp 2005-09-11 02:57:40 UTC
Reopening myself as I provided the requested information (gamin or famd - famd).
Still experiencing the crash under the above described conditions with
eog-2.12.0 and famd.
Comment 9 Christian Kirbach 2005-09-18 21:39:51 UTC
*** Bug 316643 has been marked as a duplicate of this bug. ***
Comment 10 Lucas Rocha 2005-10-13 01:39:36 UTC
Created attachment 53394 [details] [review]
Fix the image remove problem.
Comment 11 Lucas Rocha 2005-10-13 03:06:51 UTC
Applied in gnome-2-12 branch and CVS HEAD.
Comment 12 Lucas Rocha 2005-10-13 03:30:54 UTC
*** Bug 166681 has been marked as a duplicate of this bug. ***
Comment 13 Lucas Rocha 2005-10-20 15:23:32 UTC
*** Bug 319325 has been marked as a duplicate of this bug. ***
Comment 14 Lucas Rocha 2006-03-01 17:54:00 UTC
*** Bug 321250 has been marked as a duplicate of this bug. ***
Comment 15 Lucas Rocha 2006-03-01 17:58:44 UTC
*** Bug 319921 has been marked as a duplicate of this bug. ***
Comment 16 Sergej Kotliar 2006-04-17 09:37:13 UTC
*** Bug 338702 has been marked as a duplicate of this bug. ***
Comment 17 Lucas Rocha 2006-04-20 20:40:09 UTC
*** Bug 338800 has been marked as a duplicate of this bug. ***
Comment 18 Mariano Suárez-Alvarez 2007-01-29 08:46:00 UTC
*** Bug 401832 has been marked as a duplicate of this bug. ***