Re: [Gimp-developer] Gimp git on Mac Segfault

On 2013-07-28 08:03 +0100, Jehan Pagès wrote:

On Sun, Jul 28, 2013 at 5:42 PM, su_v <suv-sf users sourceforge net> wrote:
On 2013-07-28 07:32 +0100, Jehan Pagès wrote:
yes I saw your message in the report too. Actually I was feeling this
would work your crash around when I wrote this patch. But that is
still not a fix. When you open the preferences and check the Interface
tab, then the language list, this list is empty now, right?

No, it lists all languages.

Hmmm... ok. So it lists them all of them, nicely displayed "language
name [code]" as usual?

Screenshot here

On 2013-07-28 07:31 +0100, Partha Bagchi wrote:
Are you using Macport? I don't use Macport and build all my
dependencies from scratch.

Yes, I use MacPorts for the dependencies.

What is MacPorts? Is it like a package manager for Mac?

Yes: <>

Also I see you run the command " quartz". Is there
something particular you do in this script?

Since I install into a custom prefix, it mainly sets $PATH accordingly.
The script was originally based on the launch script described here:

There is no difference whether I launch the gimp-2.9 binary directly, or
with the script: same result (crash unpatched, no crash with patch).

Also why the "quartz"? Can you like switch backend at startup or
something (not even at compilation?)? Like between X11 and quartz? How
does this work under OSX, I heard there is X11 too, so are there
layers running on each other? Concurrent systems and you can use one
or the other?

I have two MacPorts trees installed into custom prefixes, one with GTK+
compiled using the Quartz backend (native backend for OS X), one with
the X11 backend ("legacy" backend on OS X: all GTK+ apps require to run
under X11/XQuartz).
For GIMP I use two local git clones - one for building with Quartz-based
dependencies, one for building with X11-based dependencies. They both
are configured to install into different prefixes.
The launch script just sets $PATH for gimp-2.9 accordingly, depending on
the command line argument given (quartz, x11).

AFAICT the backend is not relevant for this issue: the crash is the same
with unpatched builds, independent of the GTK+ backend used. I only
built GIMP with the X11 backend (and integrated it as command line
option in the script) because I wanted to compare the redraw performance
between the two backends [1].

Note: Above build setup has a lot of rendundant packages installed,
because with GTK2 one cannot have multiple backends compiled in. I
maintain it for building & testing Inkscape, and thus can easily reuse
it to test local builds of GIMP 2.8 & GIMP 2.9 (git master).

[1] see footnote in <>

On Sun, Jul 28, 2013 at 5:19 PM, su_v <suv-sf users sourceforge net> wrote:
On my system (10.7.5), GIMP launches ok, but crashes when opening
the preferences. See stack trace in

With your patch applied (and no other local changes), GIMP still
launches ok, and now no longer crashes when opening the preferences
dialog (see attached log).

On 2013-07-28 05:47 +0100, Jehan Pagès wrote:
Hey Partha, su_v,

could you test the following patch:
- copy it in your GIMP directory;
- apply it with this command from the GIMP directory:
patch -p0 < osx_crash.diff
- compile and try again.

I believe it would not fix your crash, because I did not change the
calls where your traces say it happens. Problem is that it apparently
crashes at strchr() but there are 5 of them in this function. Looking
at what seems to be the code in MacOSX of strchr(), looks like it may
be when the string is NULL, but in my code, I don't see anywhere where
this is supposed to be possible.
So unless you can run a debugger to know which exact strchr() line it
happens at, I added some debug output in the code. Just copy paste
anything which may be outputted before crash.
You will most likely have a whole bunch of lines on screen because I
want to cover as much ground as possible, so you can run like this:
$ ./gimp-2.9 --verbose >output.txt

Then send me the output.txt after the crash occurs.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]