Hi,
a quick update from my side. After endless attempts, I think I have been able to narrow down the cause of my constant startup crashes. They definitely have something to do with the cairoification changes between rev #19024 and #19033. Unfortunately, the revisions in between don't compile as they are, which makes bisecting the history harder, but after making slight adaptions to recover compiling and a lot of experiments, I'm pretty sure that the following call in line #1685 of display/sp-canvas.cpp is the one to blame:
cairo_surface_t *cst = cairo_get_target(buf.ct);
When I comment it out (as well as the other two lines referring to the variable cst), Inkscape starts up as usual and I can work normally, except that rendering is of course slightly broken.
Since I'm not familiar with cairo, does anyone have a clue why this call could be causing a crash? I upgraded my cairo version from 1.5.12 to 1.6.4, just in case this was a bug on cairo's side, but it didn't help.:(
Do you think cairo is to blame and should I report a bug there? Or is cairo_get_target() simply passed invalid data so that this is fixable on Inkscape's side? Any help is greatly appreciated.
I still don't understand why the crashes only happen in some of my SVN checkouts, but perhaps my first guess about the modified CFLAGS was wrong and they don't have anything to do with the problem at all. Then again why don't more people see this?
Max