When i launch gimp-2.0, it shows splash screen, starts loading plugins and crashes with segfault. gdb backtrace shows: Program received signal SIGSEGV, Segmentation fault. 0x406b97c3 in strchr () from /lib/libc.so.6 (gdb) bt #0 0x406b97c3 in strchr () from /lib/libc.so.6 #1 0x082218c7 in file_utils_uri_to_utf8_basename () gimp was compiled with following use flags: media-gfx/gimp-2.0.4 -aalib (-altivec) +debug -doc -gimpprint +jpeg +mmx -mng +png -python +sse -svg +tiff -wmf 0 kB emerge info: Gentoo Base System version 1.4.16 Portage 2.0.51-r3 (default-linux/x86/2004.3, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.10-gentoo-r4tmx i686) ================================================================= System uname: 2.6.10-gentoo-r4tmx i686 Intel(R) Pentium(R) M processor 1.60GHz Autoconf: sys-devel/autoconf-2.59-r5 Automake: sys-devel/automake-1.8.5-r1 Binutils: sys-devel/binutils-2.15.90.0.1.1-r3 Headers: sys-kernel/linux-headers-2.4.21-r1 Libtools: sys-devel/libtool-1.5.2-r7 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-O2 -march=pentium4 -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distlocks sandbox sfperms" GENTOO_MIRRORS="http://gentoo.osuosl.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X apm avi berkdb bitmap-fonts cdr crypt cscope dvd encode fam foomaticdb gdbm gif gpm gtk gtk2 i8x0 jpeg libwww mad mikmod mmx motif mp3 mpeg ncurses network nls oggvorbis opengl oss pdflib perl png python qt quicktime readline rtc sdl sse sse2 ssl tiff truetype unicode xml2 xv zlib"
Ok, it also outputs a warning message: (script-fu:8923): LibGimpBase-WARNING **: script-fu: wire_read(): error
Please attach the full backtrace.
Full gdb output (I'm afraid it is not very useful): Could you hint what would make it more useful? Please see below gdb output, I also did an strace on gimp, it has a slightly more interesting output. When execution was slowed down by strace printing text in terminal, i could read that it is actually crashing on screen: "starting extensions: extension_script_fu" And the strace seems to end with loading of "XKeysymDB" file. Don't know if it's relevant, but my keyboard config in /etc/X11/xorg.conf is: Option "XkbRules" "xorg" Option "XkbModel" "pc105" Option "XkbLayout" "ee" My locale is set to LANG=et_EE.UTF8 ---------------------------------------------------------------------------- bash-2.05b$ gdb gimp-2.0 GNU gdb 6.0 Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"... (no debugging symbols found)...Using host libthread_db library "/lib/libthread_d b.so.1". (gdb) r Starting program: /usr/bin/gimp-2.0 warning: Unable to find dynamic linker breakpoint function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code. (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... (no debugging symbols found)...(no debugging symbols found)... Program received signal SIGSEGV, Segmentation fault. 0x406bb423 in strchr () from /lib/libc.so.6 (gdb) bt #0 0x406bb423 in strchr () from /lib/libc.so.6 #1 0x082218c7 in file_utils_uri_to_utf8_basename () (gdb) The program is running. Exit anyway? (y or n) y (script-fu:32077): LibGimpBase-WARNING **: script-fu: wire_read(): error ---------------------------------------------------------------------------- Last snippet of strace output: --------------------------------------------------------------------------- gettimeofday({1105594709, 571938}, NULL) = 0 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN|POLLPRI, revents=POLLIN}], 2, 53) = 1 gettimeofday({1105594709, 572025}, NULL) = 0 read(4, "\0\0\0\v", 4) = 4 write(3, "F\4\5\0%\0\300\1\7\0\300\1\0\0\0\0+\1\24\0008\0\4\0\6\0"..., 96) = 96 ioctl(3, FIONREAD, [0]) = 0 gettimeofday({1105594709, 572297}, NULL) = 0 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN|POLLPRI}], 2, 0) = 0 ioctl(3, FIONREAD, [0]) = 0 gettimeofday({1105594709, 572368}, NULL) = 0 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN|POLLPRI}], 2, 0) = 0 write(3, "5\30\4\0x\4\300\1#\0\300\1+\1\24\0;\3\5\0\30\0\300\1\0"..., 188) = 188 ioctl(3, FIONREAD, [0]) = 0 gettimeofday({1105594709, 572563}, NULL) = 0 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN|POLLPRI}], 2, 0) = 0 gettimeofday({1105594709, 572609}, NULL) = 0 stat64("/home/tm/.gimp-2.0/menurc", {st_mode=S_IFREG|0644, st_size=45551, ...}) = 0 open("/home/tm/.gimp-2.0/menurc", O_RDONLY|O_LARGEFILE) = 5 read(5, "; gimp-2.0 GtkAccelMap rc-file "..., 4000) = 4000 read(5, "th \"<Image>/Layer/Colors/Invert\""..., 4000) = 4000 read(5, "(gtk_accel_path \"<Image>/Layer/C"..., 4000) = 4000 read(5, "l_path \"<Image>/Filters/Light Ef"..., 4000) = 4000 read(5, "h \"<Image>/Filters/Render/Nature"..., 4000) = 4000 read(5, "ack/Select Previous Layer\" \"Page"..., 4000) = 4000 read(5, "Colors/tearoff\" \"\")\n; (gtk_accel"..., 4000) = 4000 read(5, "\n; (gtk_accel_path \"<Toolbox>/Fi"..., 4000) = 4000 read(5, "ccel_path \"<Image>/Image/Transfo"..., 4000) = 4000 read(5, "cel_path \"<Image>/Filters/Noise/"..., 4000) = 4000 read(5, "_accel_path \"<Image>/Layer/Trans"..., 4000) = 4000 read(5, "line...\" \"\")\n; (gtk_accel_path \""..., 4000) = 1551 read(5, "", 4000) = 0 close(5) = 0 open("/usr/X11R6/lib/X11/XKeysymDB", O_RDONLY) = 5 fstat64(5, {st_mode=S_IFREG|0444, st_size=8298, ...}) = 0 read(5, "! $Xorg: XKeysymDB,v 1.3 2000/08"..., 8298) = 8298 close(5) = 0 brk(0x8857000) = 0x8857000 --- SIGSEGV (Segmentation fault) @ 0 (0) --- (script-fu:32026): LibGimpBase-WARNING **: script-fu: wire_read(): error +++ killed by SIGSEGV +++ bash-2.05b$
In order to get a useful stack trace you need to emerge gimp with FEATURES="nostrip" USE="debug" CFLAGS="-march=pentium4 -g -ggdb". If you are still unable to provide a useful stack trace, it might be because the segfault is happening in a library. In that case repeat the above process for that library and retry.
This is a bit better already :) Seems that glibc strstr() doesn't like ISO-8859-1 letter '
This is a bit better already :) Seems that glibc strstr() doesn't like ISO-8859-1 letter 'õ' when expecting UTF8? Starting program: /usr/bin/gimp-2.0 warning: Unable to find dynamic linker breakpoint function. GDB will be unable to debug shared library initializers and track explicitly loaded dynamic code. (gimp-2.0:2999): Gdk-WARNING **: locale not supported by Xlib (gimp-2.0:2999): Gdk-WARNING **: can not set locale modifiers Program received signal SIGSEGV, Segmentation fault. 0x406c837b in strstr () from /lib/libc.so.6 (gdb) bt #0 0x406c837b in strstr () from /lib/libc.so.6 #1 0x082799d9 in file_utils_uri_to_utf8_basename ( uri=0x8709f50 "file:///home/tm/Desktop/Kuvat%F5mmis.png") at file-utils.c:217 #2 0x080b832e in menus_last_opened_update (container=0x83a1870, unused=0x0, item_factory=0x8846220) at menus.c:485 #3 0x080b809c in menus_last_opened_add (item_factory=0x8846220) at menus.c:39 #4 0x080b9f11 in toolbox_menu_setup (factory=0x8846220, callback_data=0x839dc18) at toolbox-menu.c:298 #5 0x08180011 in gimp_menu_factory_menu_new (factory=0x870f2b0, identifier=0x82b2f42 "<Toolbox>", container_type=143223328, callback_data=0x839dc18, create_tearoff=1) at gimpmenufactory.c:201 #6 0x080995d8 in gui_restore_after_callback (gimp=0x839dc18, status_callback=0x809abaa <splash_update>) at gui.c:355 #7 0x4052c9dc in g_cclosure_marshal_VOID__POINTER () from /usr/lib/libgobject-2.0.so.0 #8 0x0839dc18 in ?? () #9 0x0809abaa in splash_destroy () at splash.c:169 Previous frame inner to this frame (corrupt stack?) (gdb) q The program is running. Exit anyway? (y or n) y (script-fu:3002): LibGimpBase-WARNING **: script-fu: wire_read(): error
Silly me. There you go... full backtrace with glib debugging and all... GNU gdb 6.0 Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". (gdb) r Starting program: /usr/bin/gimp-2.0 Detaching after fork from child process 23503. Program received signal SIGSEGV, Segmentation fault. 0x406e437b in strstr () from /lib/libc.so.6 (gdb) bt full #0 0x406e437b in strstr () from /lib/libc.so.6 No symbol table info available. #1 0x082799d9 in file_utils_uri_to_utf8_basename (uri=0x8709f10 "file:///home/tm/Desktop/Kuvat%F5mmis.png") at file-utils.c:217 filename = (gchar *) 0x0 basename = (gchar *) 0x0 #2 0x080b832e in menus_last_opened_update (container=0x83a1830, unused=0x0, item_factory=0x88461b8) at menus.c:485 uri = (const gchar *) 0x8709f10 "file:///home/tm/Desktop/Kuvat%F5mmis.png" filename = (gchar *) 0x0 basename = (gchar *) 0x406dfc44 "\213\203
Silly me. There you go... full backtrace with glib debugging and all... GNU gdb 6.0 Copyright 2003 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"...Using host libthread_db library "/lib/libthread_db.so.1". (gdb) r Starting program: /usr/bin/gimp-2.0 Detaching after fork from child process 23503. Program received signal SIGSEGV, Segmentation fault. 0x406e437b in strstr () from /lib/libc.so.6 (gdb) bt full #0 0x406e437b in strstr () from /lib/libc.so.6 No symbol table info available. #1 0x082799d9 in file_utils_uri_to_utf8_basename (uri=0x8709f10 "file:///home/tm/Desktop/Kuvat%F5mmis.png") at file-utils.c:217 filename = (gchar *) 0x0 basename = (gchar *) 0x0 #2 0x080b832e in menus_last_opened_update (container=0x83a1830, unused=0x0, item_factory=0x88461b8) at menus.c:485 uri = (const gchar *) 0x8709f10 "file:///home/tm/Desktop/Kuvat%F5mmis.png" filename = (gchar *) 0x0 basename = (gchar *) 0x406dfc44 "\213\203Ü:" imagefile = (GimpImagefile *) 0x8459470 path_str = (gchar *) 0x88a9e80 "x\0377\bÉ4w@\001" widget = (GtkWidget *) 0x88aa530 num_documents = 3 i = 0 n = 10 #3 0x080b809c in menus_last_opened_add (item_factory=0x88461b8) at menus.c:394 last_opened_entries = (GimpItemFactoryEntry *) 0x88a9bc8 n_last_opened_entries = 10 i = 10 #4 0x080b9f11 in toolbox_menu_setup (factory=0x88461b8, callback_data=0x839dbd8) at toolbox-menu.c:298 reorder_subsubmenus = {0x82b9bac "/Xtns"} menu_item = (GtkWidget *) 0x4054e71c menu = (GtkWidget *) 0x887d118 list = (GList *) 0x88461b8 i = 143107860 pos = 138009560 #5 0x08180011 in gimp_menu_factory_menu_new (factory=0x870f270, identifier=0x82b2f42 "<Toolbox>", container_type=143223328, callback_data=0x839dbd8, create_tearoff=1) at gimpmenufactory.c:201 item_factory = (GimpItemFactory *) 0x88461b8 entry = (GimpMenuFactoryEntry *) 0x870f2c8 list = (GList *) 0x870c668 #6 0x080995d8 in gui_restore_after_callback (gimp=0x839dbd8, status_callback=0x809abaa <splash_update>) at gui.c:355 gui_config = (GimpGuiConfig *) 0x83a9f40 #7 0x40532f4a in g_cclosure_marshal_VOID__POINTER (closure=0x846ad58, return_value=0x0, n_param_values=2, param_values=0xbffff640, invocation_hint=0xbffff4e8, marshal_data=0x0) at gmarshal.c:601 callback = 0x8099553 <gui_restore_after_callback> cc = (GCClosure *) 0x846ad58 data1 = 0x839dbd8 data2 = 0x0 #8 0x40519e5e in g_closure_invoke (closure=0x846ad58, return_value=0x0, n_param_values=2, param_values=0xbffff640, invocation_hint=0xbffff4e8) at gclosure.c:437 marshal = 0x807f4fc marshal_data = 0x0 in_marshal = 0 #9 0x40531c98 in signal_emit_unlocked_R (node=0x839d768, detail=0, instance=0x839dbd8, emission_return=0x0, instance_and_params=0xbffff640) at gsignal.c:2548 tmp = (Handler *) 0x83777e8 handler = (Handler *) 0x83777e8 accumulator = (SignalAccumulator *) 0x0 emission = {next = 0x0, instance = 0x839dbd8, ihint = {signal_id = 77, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 4} class_closure = (GClosure *) 0x839d720 hlist = (HandlerList *) 0x847ede8 handler_list = (Handler *) 0x83777e8 return_accu = (GValue *) 0x0 accu = {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, { v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}} signal_id = 77 max_sequential_handler_number = 1362 return_value_altered = 1 #10 0x40530abd in g_signal_emit_valist (instance=0x839dbd8, signal_id=77, detail=0, var_args=0xbffff7d0 "ØÛ9\bL") at gsignal.c:2237 instance_and_params = (GValue *) 0xbffff640 stack_values = {{g_type = 138007488, data = {{v_int = 138009560, v_uint = 138009560, v_long = 138009560, v_ulong = 138009560, v_int64 = 138009560, v_uint64 = 138009560, v_float = 5.59298375e-34, v_double = 6.8185782393666265e-316, v_pointer = 0x839dbd8}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 68, data = {{v_int = 134851498, v_uint = 134851498, v_long = 134851498, v_ulong = 134851498, v_int64 = 134851498, v_uint64 = 134851498, v_float = 4.1428728e-34, v_double = 6.6625492452029567e-316, v_pointer = 0x809abaa}, { v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 578208374496165888, v_uint64 = 578208374496165888, v_float = 0, v_double = 5.2548341788124774e-270, v_pointer = 0x0}, {v_int = 249997283, v_uint = 249997283, v_long = 249997283, v_ulong = 249997283, v_int64 = -4611695913782040605, v_uint64 = 13835048159927511011, v_float = 5.68610466e-30, v_double = -1.9978027898855479, v_pointer = 0xee6a7e3}}}, {g_type = 1074737152, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 141591584, v_uint = 141591584, v_long = 141591584, v_ulong = 141591584, v_int64 = 141591584, v_uint64 = 141591584, v_float = 7.23776851e-34, v_double = 6.9955537394645111e-316, v_pointer = 0x8708420}}}, {g_type = 138779272, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 608204099673915392, v_uint64 = 608204099673915392, v_float = 0, v_double = 5.0805067023507609e-268, v_pointer = 0x0}, {v_int = 141555744, v_uint = 141555744, v_long = 141555744, v_ulong = 141555744, v_int64 = 3311561340960, v_uint64 = 3311561340960, v_float = 7.22131159e-34, v_double = 1.6361286926643069e-311, v_pointer = 0x86ff820}}}, {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 2988133301878784, v_uint64 = 2988133301878784, v_float = 0, v_double = 1.4763340096524779e-308, v_pointer = 0x0}, {v_int = 33261, v_uint = 33261, v_long = 33261, v_ulong = 33261, v_int64 = 4295000557, v_uint64 = 4295000557, v_float = 4.66085882e-41, v_double = 2.1220122240827186e-314, v_pointer = 0x81ed}}}, {g_type = 0, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 0, v_uint64 = 0, v_float = 0, v_double = 0, v_pointer = 0x0}}}, {g_type = 1238, data = {{v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 17592186044416, v_uint64 = 17592186044416, v_float = 0, v_double = 8.6916947597937554e-311, v_pointer = 0x0}, {v_int = 8, v_uint = 8, v_long = 8, v_ulong = 8, v_int64 = 8, v_uint64 = 8, v_float = 1.12103877e-44, v_double = 3.9525251667299724e-323, v_pointer = 0x8}}}, {g_type = 1105633846, data = {{ v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 4748661209920700416, v_uint64 = 4748661209920700416, v_float = 0, v_double = 3037835264, v_pointer = 0x0}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 4748661295820046336, v_uint64 = 4748661295820046336, v_float = 0, v_double = 3037876224, v_pointer = 0x0}}}, {g_type = 0, data = {{v_int = 695729, v_uint = 695729, v_long = 695729, v_ulong = 695729, v_int64 = 695729, v_uint64 = 695729, v_float = 9.74923979e-40, v_double = 3.4373579771548462e-318, v_pointer = 0xa9db1}, {v_int = 138779272, v_uint = 138779272, v_long = 138779272, v_ulong = 138779272, v_int64 = 593829428388534920, v_uint64 = 593829428388534920, v_float = 5.94641817e-34, v_double = 5.6229870573091507e-269, v_pointer = 0x8459a88}}}, {g_type = 1080954209, data = {{v_int = 1105633846, v_uint = 1105633846, v_long = 1105633846, v_ulong = 1105633846, v_int64 = 4748661211026334262, v_uint64 = 4748661211026334262, v_float = 28.8292046, v_double = 3037835791.2073011, v_pointer = 0x41e6a236}, {v_int = 1105633866, v_uint = 1105633866, v_long = 1105633866, v_ulong = 1105633866, v_int64 = 310343279178, v_uint64 = 310343279178, v_float = 28.8292427, v_double = 1.5332995265956885e-312, v_pointer = 0x41e6a24a}}}, {g_type = 141555736, data = {{v_int = 1074759368, v_uint = 1074759368, v_long = 1074759368, v_ulong = 1074759368, v_int64 = 4612086928929425096, v_uint64 = 4612086928929425096, v_float = 2.24260139, v_double = 2.1780400280702885, v_pointer = 0x400f86c8}, {v_int = -1073744024, v_uint = 3221223272, v_long = -1073744024, v_ulong = 3221223272, v_int64 = 4645631793888753512, v_uint64 = 4645631793888753512, v_float = -1.99973774, v_double = 393.59393310534369, v_pointer = 0xbffff768}}}, {g_type = 1081638904, data = {{ v_int = 141603648, v_uint = 141603648, v_long = 141603648, v_ulong = 141603648, v_int64 = 4645631790809133888, v_uint64 = 4645631790809133888, v_float = 7.24330803e-34, v_double = 393.59375804923548, v_pointer = 0x870b340}, {v_int = -1073744040, v_uint = 3221223256, v_long = -1073744040, v_ulong = 3221223256, v_int64 = 4642644163098048344, v_uint64 = 4642644163098048344, v_float = -1.99973583, v_double = 239.88339233392139, v_pointer = 0xbffff758}}}, {g_type = 1081645440, data = {{v_int = 141603648, v_uint = 141603648, v_long = 141603648, v_ulong = 141603648, v_int64 = 4638181654638146368, v_uint64 = 4638181654638146368, v_float = 7.24330803e-34, v_double = 120.52563677793387, v_pointer = 0x870b340}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 4612086927854665728, v_uint64 = 4612086927854665728, v_float = 0, v_double = 2.17803955078125, v_pointer = 0x0}}}, {g_type = 3221223272, data = {{v_int = 1079545221, v_uint = 1079545221, v_long = 1079545221, v_ulong = 1079545221, v_int64 = 608183038233841029, v_uint64 = 608183038233841029, v_float = 3.38363767, v_double = 5.0578450204782415e-268, v_pointer = 0x40588d85}, { v_int = 137235623, v_uint = 137235623, v_long = 137235623, v_ulong = 137235623, v_int64 = -4611695123620819801, v_uint64 = 13835048950088731815, v_float = 5.23760931e-34, v_double = -1.9979782409216484, v_pointer = 0x82e0ca7}}}, {g_type = 136001129, data = {{v_int = 141603648, v_uint = 141603648, v_long = 141603648, v_ulong = 141603648, v_int64 = 608183037295899456, v_uint64 = 608183037295899456, v_float = 7.24330803e-34, v_double = 5.0578440112721536e-268, v_pointer = 0x870b340}, {v_int = 0, v_uint = 0, v_long = 0, v_ulong = 0, v_int64 = 593697246336253952, v_uint64 = 593697246336253952, v_float = 0, v_double = 5.5340963046032658e-269, v_pointer = 0x0}}}} free_me = (GValue *) 0x0 signal_return_type = 4 param_values = (GValue *) 0xbffff654 node = (SignalNode *) 0x839d768 i = 1 n_params = 1 #11 0x40530e39 in g_signal_emit (instance=0x839dbd8, signal_id=77, detail=0) at gsignal.c:2281 var_args = 0xbffff7cc "ª«\t\bØÛ9\bL" #12 0x081af8f6 in gimp_restore (gimp=0x839dbd8, status_callback=0x809abaa <splash_update>) at gimp.c:913 No locals. #13 0x08084aad in app_run (full_prog_name=0xbffffab6 "/usr/bin/gimp-2.0", gimp_argc=0, gimp_argv=0xbffff968, alternate_system_gimprc=0x0, alternate_gimprc=0x0, session_name=0x0, batch_cmds=0x839d368, no_interface=0, no_data=0, no_fonts=0, no_splash=0, be_verbose=0, use_shm=1, use_cpu_accel=1, console_messages=0, stack_trace_mode=GIMP_STACK_TRACE_NEVER, pdb_compat_mode=GIMP_PDB_COMPAT_ON) at app_procs.c:222 update_status_func = 0x809abaa <splash_update> gimp = (Gimp *) 0x839dbd8 loop = (GMainLoop *) 0x839d370 swap_is_ok = 1 #14 0x08085c75 in main (argc=1, argv=0xbffff964) at main.c:477 abort_message = (const gchar *) 0x0 full_prog_name = (gchar *) 0xbffffab6 "/usr/bin/gimp-2.0" alternate_system_gimprc = (gchar *) 0x0 alternate_gimprc = (gchar *) 0x0 session_name = (gchar *) 0x0 batch_cmds = (gchar **) 0x839d368 show_help = 0 no_interface = 0 no_data = 0 no_fonts = 0 no_splash = 0 be_verbose = 0 use_shm = 1 use_cpu_accel = 1 console_messages = 0 use_debug_handler = 0 stack_trace_mode = GIMP_STACK_TRACE_NEVER pdb_compat_mode = GIMP_PDB_COMPAT_ON i = 1 j = -1073743676 (gdb) q The program is running. Exit anyway? (y or n)
And now i have compiled glibc too with debugging options... I would note that haystack is NULL. #0 0x406e437b in *__GI_strstr (phaystack=0x0, pneedle=0x832360a "/") at ../sysdeps/generic/strstr.c:60 a = 0 c = 3221221896 haystack = (const unsigned char *) 0x0 needle = (const unsigned char *) 0x832360a "/" b = 47 rneedle = (const unsigned char *) 0x0
I just got a very similar segfault at startup of GIMP 2.0.4 on Gentoo / amd64. Program received signal SIGSEGV, Segmentation fault. 0x0000002a974d3460 in strchr () from /lib/libc.so.6 (gdb) bt ##0 0x0000002a974d3460 in strchr () from /lib/libc.so.6 #1 0x00000000005e2666 in file_utils_uri_to_utf8_basename () #2 0x0000000000472297 in menus_filters_subdirs_to_top () #3 0x0000000000474636 in toolbox_menu_setup () #4 0x0000000000516e6d in gimp_menu_factory_menu_new () In my case, this was caused by changing to an UTF-8 locale while I had previously used a non-UTF-8 locale with filenames encoded in iso-8859-1. The ~/.gimp-2.0/documents file contained references to previously opened files with non-ASCII characters in the filename and encoded in iso-8859-1. For me the fix was to simply delete the entries that caused problems from the documents file. Then GIMP didn't crash at startup anymore.
FYI, the problem I experienced doesn't occur in GIMP 2.0.6 or 2.2.3, I just tested. I think this is what fixes it: http://bugzilla.gnome.org/show_bug.cgi?id=153751#c16 http://cvs.gnome.org/viewcvs/gimp/app/file/file-utils.c?r1=1.29&r2=1.29.2.1&diff_format=l (Is there a reason for not marking GIMP 2.0.6 stable in Portage?) And just to make it clear to casual readers: I don't know if this is the same problem as the original reporter, Mart, of this bug had, but hopefully it is.
does this still happen with 2.2.6-r1 ?
closing, no reponse from reporter. most likely resolved in 2.2.6.