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 141112 - GIMP 2.0.1 segfault at startup under Solaris 2.8
GIMP 2.0.1 segfault at startup under Solaris 2.8
Status: RESOLVED DUPLICATE of bug 140115
Product: GIMP
Classification: Other
Component: General
2.0.x
Other Solaris
: Normal critical
: ---
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2004-04-26 04:07 UTC by Steve Lipa
Modified: 2004-04-30 00:06 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement



Description Steve Lipa 2004-04-26 04:07:38 UTC
Using Solaris 2.8 build Gimp 2.0.1 using
gtk-2.4 and disable the gimp-print stuff:
./configure --disable-print

No problems encountered in the build.

Upon startup it gets to the point where it
is loading plug-ins and then segfaults.

Here is a stack trace:

Starting program: /usr/local/bin/gimp-2.0 

Program received signal SIGSEGV, Segmentation fault.
0xfe8b3374 in strlen () from /usr/lib/libc.so.1
(gdb) where
  • #0 strlen
    from /usr/lib/libc.so.1
  • #1 g_strdup
    at gstrfuncs.c line 91
  • #2 g_param_spec_internal
    at gparam.c line 315
  • #3 g_param_spec_double
    at gparamspecs.c line 1764
  • #4 gimp_paint_options_class_init
    at gimppaintoptions.c line 194
  • #5 type_class_init_Wm
    at gtype.c line 1907
  • #6 g_type_class_ref
    at gtype.c line 2404
  • #7 g_type_class_ref
    at gtype.c line 2398
  • #8 g_object_new_valist
    at gobject.c line 986
  • #9 g_object_new
    at gobject.c line 822
  • #10 gimp_paint_info_new
    at gimppaintinfo.c line 147
  • #11 gimp_paint_register
    at gimp-paint.c line 107
  • #12 gimp_dodge_burn_register
    at gimpdodgeburn.c line 83
  • #13 gimp_paint_init
    at gimp-paint.c line 75
  • #14 gimp_real_initialize
    at gimp.c line 636
  • #15 g_cclosure_marshal_VOID__POINTER
    at gmarshal.c line 601
  • #16 g_type_class_meta_marshal
    at gclosure.c line 514
  • #17 g_closure_invoke
    at gclosure.c line 437
  • #18 signal_emit_unlocked_R
    at gsignal.c line 2474
  • #19 g_signal_emit_valist
    at gsignal.c line 2195
  • #20 g_signal_emit
    at gsignal.c line 2239
  • #21 gimp_initialize
    at gimp.c line 864
  • #22 app_run
    at app_procs.c line 217
  • #23 main
    at main.c line 477

Comment 1 Sven Neumann 2004-04-26 08:43:13 UTC
The stack trace doesn't give any useful information. The crash happens in an
some code that is well tested and almost certainly correct. This is very likely
a build problem. I don't know if anyone else tried GIMP with GTK+-2.4 on Solaris
yet. Perhaps there's a problem on the GObject level? Do other applications using
GTK+-2.4 work for you? Can you run the GObject test suite? What about the GTK+
tests?
Comment 2 Steve Lipa 2004-04-26 17:25:17 UTC
Sorry about the stack trace.  The instructions for
reporting bugs said it would be nice to include one
if you have a crash problem....

I'm also sorry if this is my fault because of something
I did wrong during the build process, but I did not
get any indication during the build that there might
be a problem.  I scrutinized the output from .configure
pretty thoroughly but confess that I just typed 'make'
and went off for a cup of coffee.   

GTK+-2.4 seems to work fine for me other than this.
All the demos available when I run gtk-demo and tests in
tests/testgtk seem to work OK.  (At least they don't
crash and *seem* to be working right.  I don't really 
know if they are doing everything they are supposed to.)   
I'd be happy to run the GObject test suite if you can 
give me a hint where to find it.
Comment 3 weskaggs 2004-04-26 18:45:46 UTC
In #3 of the stack trace, nick and blurb should both be NULL pointers.  The fact
that they are not suggests a compilation problem.  A problem in GTK+ is possible
but less likely.  Could you specify what hardware you are running on, and what
compiler you used?
Comment 4 Steve Lipa 2004-04-26 20:32:10 UTC
GTK and GIMP were both compiled on a Sun Ultra 10 using gcc 2.8.1
Comment 5 weskaggs 2004-04-26 21:18:02 UTC
Yeah.  Either upgrading gcc or turning down the optimization (at least in the
app/paint directory) would be reasonable things to try, I think.  If you upgrade
gcc, it would be best to recompile both gtk and gimp.
Comment 6 Steve Lipa 2004-04-28 19:22:44 UTC
OK, here's what I did:

Rebuilt the following packages, in this order:

Gnu make-3.80
Gnu tar-1.13
gcc-3.4.0
pkgconfig-0.15.0
jpeg-6b
tiff-v3.6.1
zlib-1.1.4
libpng-1.2.5
aalib-1.4.0
expat-1.95.7
libart_lgpl-2.3.16
render-0.8
xrender-0.8.3
libXft-2.1.6
freetype-2.1.8
fontconfig-2.2.94
gettext-0.14.1
libiconv-1.9.1
glib-2.4.0
atk-1.6.0
pango-1.4.0
gtk+-2.4.0   

At this point I should have just tried to compile GIMP, but I
decided to try to press on compiling all of the gnome stuff 
required to get gtkhtml2 to work....

libIDL-0.8.3
popt-1.9 
ORBit2-2.10.0 

At this point I hit a brick wall.  So far I have not figured out
how to get ORBit2 to compile.  I'll figure it out later.  I decided
to just try compiling GIMP 2.0.1 without the help system.  To
get it to compile at all with gcc 3.4 I had to apply the following 
patch to gimp-2.0.1/app/paint-funcs/paint-funcs.h:

diff -rup paint-funcs/paint-funcs.h paint-funcs-patched/paint-funcs.h
--- paint-funcs/paint-funcs.h   2004-03-10 08:13:43.000000000 -0500
+++ paint-funcs-patched/paint-funcs.h   2004-04-28 14:10:19.790005000 -0400
@@ -350,13 +350,17 @@ void  copy_component                    
                                            PixelRegion *dest,
                                            guint        pixel);
 
-void  initial_region                      (PixelRegion *, PixelRegion *,
-                                          PixelRegion *,
-                                           guchar *,
-                                          gint,
-                                           GimpLayerModeEffects,
-                                           gboolean *,
-                                           CombinationMode);
+
+void
+initial_region (PixelRegion      *src,
+        PixelRegion      *dest,
+        PixelRegion      *mask,
+        guchar               *data,
+        gint              opacity,
+        GimpLayerModeEffects  mode,
+        gboolean         *affect,
+        InitialMode       type);
+
 
 void  combine_regions                     (PixelRegion *, PixelRegion *,
                                           PixelRegion *, PixelRegion *,



The resulting gimp-2.0 does not segfault (at least so far ;^)

Steve
Comment 7 weskaggs 2004-04-28 23:50:58 UTC
Congratulations.  Let's hope it turns out to be worth the trouble.
Comment 8 Sven Neumann 2004-04-30 00:05:03 UTC
Reopening and resolving with a proper resolution. Please don't close bugs with
state NEEDINFO unless the reason is that no information was provided.
Comment 9 Sven Neumann 2004-04-30 00:06:07 UTC

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