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 770058 - Persistent crash on startup after editing metadata
Persistent crash on startup after editing metadata
Status: RESOLVED DUPLICATE of bug 765963
Product: shotwell
Classification: Other
Component: metadata
0.22.x
Other Linux
: Normal normal
: ---
Assigned To: Shotwell Maintainers
Shotwell Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-08-18 02:34 UTC by Nick T
Modified: 2016-08-18 07:32 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
GDB log showing the crash (10.16 KB, text/plain)
2016-08-18 02:34 UTC, Nick T
Details

Description Nick T 2016-08-18 02:34:46 UTC
Created attachment 333533 [details]
GDB log showing the crash

I was going through some photos adding tags and ratings and Shotwell crashed. Then when I opened it back up, it crashed every time after. The error message is:

shotwell: tiffcomposite.cpp:749: virtual Exiv2::Internal::TiffComponent* Exiv2::Internal::TiffMnEntry::doAddPath(uint16_t, Exiv2::Internal::TiffPath&, Exiv2::Internal::TiffComponent*, Exiv2::Internal::TiffComponent::AutoPtr): Assertion `mn_' failed

I went to the folder where the last image I was editing is. Every time shotwell crashes it creates another temporary file called something like CIMG0054.JPG7209 that only has \FF\D8 in it (via text editor). So somehow the file metadata is causing some kind of problem. The image opens in other editors no problem.
Comment 1 Nick T 2016-08-18 02:40:40 UTC
Now with backtrace full (sorry about that omission):

 SHOTWELL_LOG=1 gdb shotwell 2>&1 | tee shotwell.gdb

GNU gdb (Ubuntu 7.11.1-0ubuntu1~16.04) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from shotwell...(no debugging symbols found)...done.
(gdb) 
(gdb) run
Starting program: /usr/bin/shotwell 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffe7a1e700 (LWP 10388)]
[New Thread 0x7fffe721d700 (LWP 10389)]
[New Thread 0x7fffd4cf7700 (LWP 10390)]
[New Thread 0x7fffcffff700 (LWP 10391)]
[New Thread 0x7fffcf7fe700 (LWP 10392)]
[New Thread 0x7fffceffd700 (LWP 10393)]
[New Thread 0x7fffce7fc700 (LWP 10394)]
[New Thread 0x7fffcdffb700 (LWP 10395)]
[New Thread 0x7fffcd7fa700 (LWP 10396)]
[New Thread 0x7fffccff9700 (LWP 10397)]
[New Thread 0x7fffcc7f8700 (LWP 10398)]
[New Thread 0x7fffcb985700 (LWP 10404)]
[New Thread 0x7fffcb184700 (LWP 10405)]
[New Thread 0x7fffc9f40700 (LWP 10407)]
[Thread 0x7fffc9f40700 (LWP 10407) exited]
[Thread 0x7fffcb184700 (LWP 10405) exited]
[New Thread 0x7fffcb184700 (LWP 10408)]
[Thread 0x7fffcb184700 (LWP 10408) exited]
[New Thread 0x7fffcb184700 (LWP 10409)]
[Thread 0x7fffcb184700 (LWP 10409) exited]
[New Thread 0x7fffcb184700 (LWP 10427)]
[New Thread 0x7fffc9f40700 (LWP 10428)]
[New Thread 0x7fffc94e5700 (LWP 10429)]
[New Thread 0x7fffc8ce4700 (LWP 10430)]
[New Thread 0x7fff9bfff700 (LWP 10431)]
[New Thread 0x7fff9b1e6700 (LWP 10444)]
[New Thread 0x7fff9a347700 (LWP 10446)]
[New Thread 0x7fff99b46700 (LWP 10447)]
[New Thread 0x7fff98f15700 (LWP 10448)]

(shotwell:10383): GStreamer-WARNING **: gstpad.c:5053:store_sticky_event:<h263parse0:src> Sticky event misordering, got 'segment' before 'caps'

(shotwell:10383): GStreamer-WARNING **: gstpad.c:5053:store_sticky_event:<'':decodepad2> Sticky event misordering, got 'segment' before 'caps'

(shotwell:10383): GStreamer-CRITICAL **: gst_structure_fixate_field_nearest_int: assertion 'gst_structure_has_field (structure, field_name)' failed

(shotwell:10383): GStreamer-CRITICAL **: gst_structure_fixate_field_nearest_int: assertion 'gst_structure_has_field (structure, field_name)' failed
[Thread 0x7fff9a347700 (LWP 10446) exited]
[Thread 0x7fff98f15700 (LWP 10448) exited]
[Thread 0x7fff99b46700 (LWP 10447) exited]
[Thread 0x7fffcb985700 (LWP 10404) exited]
[New Thread 0x7fffcb985700 (LWP 10463)]
shotwell: tiffcomposite.cpp:749: virtual Exiv2::Internal::TiffComponent* Exiv2::Internal::TiffMnEntry::doAddPath(uint16_t, Exiv2::Internal::TiffPath&, Exiv2::Internal::TiffComponent*, Exiv2::Internal::TiffComponent::AutoPtr): Assertion `mn_' failed.

Thread 27 "pool" received signal SIGABRT, Aborted.

Thread 140736609146624 (LWP 10463)

  • #0 __GI_raise
    at ../sysdeps/unix/sysv/linux/raise.c line 54
  • #1 __GI_abort
    at abort.c line 89
  • #2 __assert_fail_base
  • #3 __GI___assert_fail
  • #4 0x00007ffff0e0654e in
  • #5 0x00007ffff0e00ca2 in
  • #6 0x00007ffff0e01737 in
  • #7 0x00007ffff0e00ca2 in
  • #8 0x00007ffff0e061eb in
  • #9 0x00007ffff0e00ca2 in
  • #10 0x00007ffff0e01737 in
  • #11 0x00007ffff0e00ca2 in
  • #12 0x00007ffff0e1e9c4 in
  • #13 0x00007ffff0e0cb6d in
  • #14 Exiv2::ExifParser::encode(std::vector<unsigned char, std::allocator<unsigned char> >&, unsigned char const*, unsigned int, Exiv2::ByteOrder, Exiv2::ExifData const&)
  • #15 0x00007ffff0db8d0f in
  • #16 Exiv2::JpegBase::writeMetadata()
  • #17 0x00007ffff761c0d2 in
  • #18 gexiv2_metadata_save_file
  • #19 photo_metadata_write_to_file
  • #20 0x000055555563c0d9 in
  • #21 photo_persist_master_metadata
  • #22 0x00005555557f1d6a in
  • #23 0x00005555555e22b8 in
  • #24 g_thread_pool_thread_proxy
    at /build/glib2.0-7IO_Yw/glib2.0-2.48.1/./glib/gthreadpool.c line 307
  • #25 g_thread_proxy
    at /build/glib2.0-7IO_Yw/glib2.0-2.48.1/./glib/gthread.c line 780
  • #26 start_thread
    at pthread_create.c line 333
  • #27 clone
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S line 109

Comment 2 Jens Georg 2016-08-18 07:32:24 UTC
Hi, this is a known bug in exiv2 which was missing some implementation there.

It is fixed in the debian package and in the package available in the shotwell ppa.

*** This bug has been marked as a duplicate of bug 765963 ***