Opened 6 years ago
Closed 6 years ago
#58017 closed defect (fixed)
gimp2 crashes while loading certain images (exiv2?)
Reported by: | rmottola (Riccardo) | Owned by: | |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | lion | Cc: | dbevans (David B. Evans) |
Port: | exiv2 |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
A fresh compiled gimp2, exiv2 crashes when loading a JPG image
~This is on Lion 10.7
I'm unsure if this is a gimp2 or exiv2 issue, I suppose the latter, given the stacktrace.
exiv2 @0.27_1 (active) platform='darwin 11' archs='x86_64' date='2019-02-03T21:14:53+0100' gimp2 @2.10.8_3+python27+quartz (active) platform='darwin 11' archs='x86_64' date='2019-02-03T21:54:28+0100'
gimp(72592,0x7fff7d067960) malloc: *** error for object 0x101b0f0e0: pointer being freed was not allocated *** set a breakpoint in malloc_error_break to debug Program received signal SIGABRT, Aborted. 0x00007fff90b2ece2 in __pthread_kill () (gdb) bt #0 0x00007fff90b2ece2 in __pthread_kill () #1 0x00007fff8ef2d7d2 in pthread_kill () #2 0x00007fff8ef1ea7a in abort () #3 0x00007fff8ef7d84c in free () #4 0x00007fff994f96b4 in std::string::_Rep::_M_destroy () #5 0x000000010142c429 in gexiv2_metadata_init_internal () #6 0x000000010142bdce in gexiv2_metadata_open_internal () #7 0x000000010142be86 in gexiv2_metadata_open_buf () #8 0x0000000100cd180a in gimp_metadata_new () #9 0x0000000100cd1b1d in gimp_metadata_deserialize () #10 0x000000010021e33a in image_set_metadata_invoker () #11 0x00000001002639cf in gimp_procedure_execute () #12 0x000000010025e65b in gimp_pdb_execute_procedure_by_name_args () #13 0x0000000100269b13 in gimp_plug_in_handle_message () #14 0x000000010026722e in gimp_plug_in_recv_message () #15 0x00000001014ca9a5 in g_main_context_dispatch () #16 0x00000001014cac82 in g_main_context_iterate () #17 0x00000001014caed6 in g_main_loop_run () #18 0x000000010026cce8 in gimp_plug_in_manager_call_run () #19 0x000000010027359a in gimp_plug_in_procedure_execute () #20 0x00000001002639cf in gimp_procedure_execute () #21 0x000000010025e65b in gimp_pdb_execute_procedure_by_name_args () #22 0x000000010025eb07 in gimp_pdb_execute_procedure_by_name () #23 0x0000000100341a06 in file_open_image () #24 0x00000001003425f1 in file_open_with_proc_and_display () #25 0x0000000100342481 in file_open_with_display () #26 0x0000000100024ea1 in file_open_recent_cmd_callback () #27 0x0000000101455cdb in g_closure_invoke () #28 0x00000001014692e8 in signal_emit_unlocked_R () #29 0x000000010146a183 in g_signal_emit_valist () #30 0x000000010146a58e in g_signal_emit () #31 0x0000000101455cdb in g_closure_invoke () #32 0x00000001014690dc in signal_emit_unlocked_R () #33 0x000000010146a183 in g_signal_emit_valist () #34 0x000000010146a58e in g_signal_emit () #35 0x00000001007af4af in _gtk_action_emit_activate () #36 0x0000000101455cdb in g_closure_invoke () #37 0x00000001014690dc in signal_emit_unlocked_R () #38 0x000000010146a183 in g_signal_emit_valist () #39 0x000000010146a58e in g_signal_emit () #40 0x0000000101455cdb in g_closure_invoke () #41 0x00000001007910cd in idle_call_activate () #42 0x0000000100bb610c in gdk_threads_dispatch () #43 0x00000001014ca9a5 in g_main_context_dispatch () #44 0x00000001014cac82 in g_main_context_iterate () #45 0x00000001014caed6 in g_main_loop_run () #46 0x000000010000c524 in app_run () #47 0x000000010000e900 in main () (gdb)
Change History (12)
comment:1 Changed 6 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | dbevans added |
---|---|
Description: | modified (diff) |
Keywords: | gimp2 exiv2 removed |
Port: | exiv2 added; exiv removed |
comment:2 Changed 6 years ago by kencu (Ken)
Presumably there is some kind of hiccup that Riccardo is running into either in exiv2
or in gexiv2
, right about here:
#3 0x00007fff8ef7d84c in free () #4 0x00007fff994f96b4 in std::string::_Rep::_M_destroy () #5 0x000000010142c429 in gexiv2_metadata_init_internal () #6 0x000000010142bdce in gexiv2_metadata_open_internal () #7 0x000000010142be86 in gexiv2_metadata_open_buf () #8 0x0000000100cd180a in gimp_metadata_new ()
probably in #5
I would imagine. It looks like there is a test suite in gexiv2
that could be enabled to make it easier to find.
comment:3 Changed 6 years ago by kencu (Ken)
build gexiv2
on your system that shows the errors, go into the build directory, open up the permissions, and run the test suite:
sudo port clean gexiv2 sudo port -v build gexiv2 cd `port work gexiv2` cd gex* sudo chmod -R a+rw . make check
and see what happens....
comment:4 Changed 6 years ago by kencu (Ken)
Well perhaps that was too easy to be true -- the tests seem broken, I don't see how to use/fix them -- probably needs to enable the meson build variant, and then dig in. Too bad; sounded like a nice plan...
comment:5 Changed 6 years ago by rmottola (Riccardo)
First question - exiv2 or gexiv2 ? one depends on the other? exiv2 has no tests gexiv2 instead fails:
test/gexiv2-dump.vala:20.40-20.60: error: `GExiv2.Metadata' does not have a default constructor GExiv2.Metadata metadata = new GExiv2.Metadata(); ^^^^^^^^^^^^^^^^^^^^^ test/gexiv2-dump.vala:21.13-21.30: error: The name `open_path' does not exist in the context of `GExiv2.Metadata?' metadata.open_path(filename);
comment:6 Changed 6 years ago by rmottola (Riccardo)
I may add that I tried several JPEG images, coming out of different cameras and programs - no help, all crash. Also TIFF images crash! PNG images crash.
However, a BMP image works! depends of the plugin then indeed.
comment:7 Changed 6 years ago by kencu (Ken)
You could try updating to gexiv2-0.10.10.tar.xz and see if that works any better for you...
comment:8 Changed 6 years ago by rmottola (Riccardo)
Ken, do you mean sort of trying to upgrade to another release myself?
You aren't able to reproduce? I have this issue both on 10.5 and 10.7... I did not try 10.6 but I assume it will break. If you want I can test there too, but... little help.
comment:9 Changed 6 years ago by kencu (Ken)
Riccardo -- I reproduced this today, and unfortunately I think I may have inadvertently caused it -- sorry.
Please try this:
sudo port -f unintall exiv2
then edit the exiv2
Portfile and remove this line:
PortGroup cxx11 1.1
Then do this:
sudo port -v install exiv2 configure.compiler=macports-clang-5.0
and after that, see if gimp
works correctly for you. It does for me (on 10.7).
comment:10 Changed 6 years ago by kencu (Ken)
OK, I think I have fixed this up with a series of commits this evening. After these flow through, you should see a revbump and rebuild of exiv2
and if you have the same experience that I have, hopefully you will see this works now... once that is confirmed, we can close this ticket.
comment:11 Changed 6 years ago by rmottola (Riccardo)
Ken - I can confirm, I updated exiv2 once again and it works, confirmed on 10.7 and it fixed also 10.5 (as I expected) I have now GIMP running natively on Quartz on 10.5! cool, I blogged about my effort.
comment:12 Changed 6 years ago by kencu (Ken)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Remember to use WikiFormatting when writing in Trac.