Description of problem: gimp is segfaulting for me on every exit, even immediately exiting after starting it up. Here is stack traces when running with gdb: [New Thread 0x7fffe2229700 (LWP 2278)] [New Thread 0x7fffe1a28700 (LWP 2279)] [New Thread 0x7fffe1227700 (LWP 2280)] Detaching after fork from child process 2281. [New Thread 0x7fffd4336700 (LWP 2282)] Program received signal SIGSEGV, Segmentation fault. IA__FcConfigSetCurrent (config=config@entry=0x0) at fccfg.c:428 428 if (!config->fonts[FcSetSystem]) Missing separate debuginfos, use: debuginfo-install OpenEXR-libs-1.7.1-3.fc19.x86_64 SDL-1.2.15-4.fc19.x86_64 atlas-3.8.4-7.fc19.x86_64 cairo-1.12.10-1.fc19.x86_64 compat-libffi-3.0.10-2.fc19.x86_64 ilmbase-1.0.3-4.fc19.x86_64 libopenraw-0.0.9-2.fc19.x86_64 suitesparse-4.0.2-2.fc19.x86_64 (gdb) set pagination off (gdb) bt full #0 IA__FcConfigSetCurrent (config=config@entry=0x0) at fccfg.c:428 cfg = 0x555556727bc0 #1 0x00005555558d4500 in gimp_fonts_reset (gimp=gimp@entry=0x555555eae000 [Gimp]) at gimp-fonts.c:122 __PRETTY_FUNCTION__ = "gimp_fonts_reset" #2 0x0000555555823ba0 in gimp_real_exit (gimp=gimp@entry=0x555555eae000 [Gimp], force=<optimized out>) at gimp.c:737 __PRETTY_FUNCTION__ = "gimp_real_exit" #3 0x0000555555821f59 in gimp_marshal_BOOLEAN__BOOLEAN (closure=0x555555e9a220, return_value=0x7fffffffc7c0, n_param_values=<optimized out>, param_values=0x7fffffffc870, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gimpmarshal.c:85 callback = 0x555555823b10 <gimp_real_exit> cc = <optimized out> data1 = 0x555555eae000 data2 = <optimized out> v_return = <optimized out> __PRETTY_FUNCTION__ = "gimp_marshal_BOOLEAN__BOOLEAN" #4 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e9a220, return_value=return_value@entry=0x7fffffffc7c0, n_param_values=2, param_values=param_values@entry=0x7fffffffc870, invocation_hint=invocation_hint@entry=0x7fffffffc810) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0xb0 in_marshal = 0 real_closure = 0x555555e9a200 __PRETTY_FUNCTION__ = "g_closure_invoke" #5 0x00007ffff3ed3c70 in signal_emit_unlocked_R (node=node@entry=0x555555e9a270, detail=detail@entry=0, instance=instance@entry=0x555555eae000, emission_return=emission_return@entry=0x7fffffffc940, instance_and_params=instance_and_params@entry=0x7fffffffc870) at gsignal.c:3605 accumulator = 0x555555e9a2e0 emission = {next = 0x7fffffffd260, instance = 0x555555eae000, ihint = {signal_id = 153, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 93825001977088} class_closure = 0x555555e9a220 hlist = 0x555555f57430 handler_list = <optimized out> return_accu = 0x7fffffffc7c0 accu = {g_type = 20, 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 = 153 max_sequential_handler_number = 39246 return_value_altered = 1 #6 0x00007ffff3edb9aa in g_signal_emit_valist (instance=0x555555eae000, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcac8) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fffffffc870 signal_return_type = 20 param_values = 0x7fffffffc888 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #7 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x555555eae000, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffcba0, reg_save_area = 0x7fffffffcae0}} #8 0x000055555582506d in gimp_exit (gimp=0x555555eae000 [Gimp], force=0) at gimp.c:1049 handled = 32767 __PRETTY_FUNCTION__ = "gimp_exit" #9 0x00007ffff3ec1c40 in g_closure_invoke (closure=0x555555f637a0, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffcdb0, invocation_hint=invocation_hint@entry=0x7fffffffcd50) at gclosure.c:777 marshal = 0x7ffff3ec3a70 <g_cclosure_marshal_VOID__VOID> marshal_data = 0x0 in_marshal = 0 real_closure = 0x555555f63780 __PRETTY_FUNCTION__ = "g_closure_invoke" #10 0x00007ffff3ed3ef8 in signal_emit_unlocked_R (node=node@entry=0x555556a11ae0, detail=detail@entry=0, instance=instance@entry=0x5555570b8a30, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffcdb0) at gsignal.c:3567 tmp = <optimized out> handler = 0x5555570ba010 accumulator = 0x0 emission = {next = 0x0, instance = 0x5555570b8a30, ihint = {signal_id = 369, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4} class_closure = 0x5555569c6d40 hlist = 0x5555570ba010 handler_list = <optimized out> return_accu = 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 = 369 max_sequential_handler_number = 39246 return_value_altered = 1 #11 0x00007ffff3edc24f in g_signal_emit_valist (instance=0x5555570b8a30, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcff8) at gsignal.c:3315 instance_and_params = 0x7fffffffcdb0 signal_return_type = 4 param_values = 0x7fffffffcdc8 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #12 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x5555570b8a30, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffd0d0, reg_save_area = 0x7fffffffd010}} #13 0x00007ffff74a5908 in _gtk_action_emit_activate (action=0x5555570b8a30 [GimpAction]) at gtkaction.c:795 group = 0x555555e36490 [GimpActionGroup] #14 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e81110, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffd2d0, invocation_hint=invocation_hint@entry=0x7fffffffd270) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0x378 in_marshal = 0 real_closure = 0x555555e810f0 __PRETTY_FUNCTION__ = "g_closure_invoke" #15 0x00007ffff3ed3813 in signal_emit_unlocked_R (node=node@entry=0x555555e811c0, detail=detail@entry=0, instance=instance@entry=0x55555721a2b0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffd2d0) at gsignal.c:3497 accumulator = 0x0 emission = {next = 0x7fffffffd860, instance = 0x55555721a2b0, ihint = {signal_id = 98, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 93825013978640} class_closure = 0x555555e81110 hlist = 0x0 handler_list = <optimized out> return_accu = 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 = 98 max_sequential_handler_number = 39246 return_value_altered = <optimized out> #16 0x00007ffff3edc24f in g_signal_emit_valist (instance=0x55555721a2b0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd518) at gsignal.c:3315 instance_and_params = 0x7fffffffd2d0 signal_return_type = 4 param_values = 0x7fffffffd2e8 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #17 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x55555721a2b0, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffd5f0, reg_save_area = 0x7fffffffd530}} #18 0x00007ffff76b0edc in IA__gtk_widget_activate (widget=widget@entry=0x55555721a2b0 [GtkImageMenuItem]) at gtkwidget.c:5048 __PRETTY_FUNCTION__ = "IA__gtk_widget_activate" #19 0x00007ffff7594e8d in IA__gtk_menu_shell_activate_item (menu_shell=0x555556e13850 [GtkMenu], menu_item=0x55555721a2b0 [GtkImageMenuItem], force_deactivate=<optimized out>) at gtkmenushell.c:1283 slist = <optimized out> shells = 0x555557797b70 = {0x555556e13850, 0x555556f04110} deactivate = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_menu_shell_activate_item" #20 0x00007ffff759528c in gtk_menu_shell_button_release (widget=0x555556e13850 [GtkMenu], event=<optimized out>) at gtkmenushell.c:710 submenu = 0x0 menu_item = 0x55555721a2b0 [GtkImageMenuItem] deactivate = 1 menu_shell = 0x555556e13850 [GtkMenu] priv = 0x555556e13980 #21 0x00007ffff757e42c in _gtk_marshal_BOOLEAN__BOXED (closure=0x555555e41380, return_value=0x7fffffffd820, n_param_values=<optimized out>, param_values=0x7fffffffd8d0, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:86 callback = 0x7ffff7588310 <gtk_menu_button_release> cc = <optimized out> data1 = 0x555556e13850 data2 = 0x555555e4d910 v_return = <optimized out> __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED" #22 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e41380, return_value=return_value@entry=0x7fffffffd820, n_param_values=2, param_values=param_values@entry=0x7fffffffd8d0, invocation_hint=invocation_hint@entry=0x7fffffffd870) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0x160 in_marshal = 0 real_closure = 0x555555e41360 __PRETTY_FUNCTION__ = "g_closure_invoke" #23 0x00007ffff3ed3c70 in signal_emit_unlocked_R (node=node@entry=0x555555e413b0, detail=detail@entry=0, instance=instance@entry=0x555556e13850, emission_return=emission_return@entry=0x7fffffffd9a0, instance_and_params=instance_and_params@entry=0x7fffffffd8d0) at gsignal.c:3605 accumulator = 0x555555e41420 emission = {next = 0x0, instance = 0x555556e13850, ihint = {signal_id = 38, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 93825001854640} class_closure = 0x555555e41380 hlist = 0x0 handler_list = <optimized out> return_accu = 0x7fffffffd820 accu = {g_type = 20, 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 = 38 max_sequential_handler_number = 39246 return_value_altered = 0 #24 0x00007ffff3edb9aa in g_signal_emit_valist (instance=0x555556e13850, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffdb28) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fffffffd8d0 signal_return_type = 20 param_values = 0x7fffffffd8e8 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #25 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x555556e13850, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffdc00, reg_save_area = 0x7fffffffdb40}} #26 0x00007ffff76b1e8e in gtk_widget_event_internal (widget=widget@entry=0x555556e13850 [GtkMenu], event=event@entry=0x555557528100) at gtkwidget.c:5017 signal_num = <optimized out> return_val = 0 #27 0x00007ffff76b2209 in IA__gtk_widget_event (widget=widget@entry=0x555556e13850 [GtkMenu], event=event@entry=0x555557528100) at gtkwidget.c:4814 __PRETTY_FUNCTION__ = "IA__gtk_widget_event" #28 0x00007ffff757c1f4 in IA__gtk_propagate_event (widget=0x555556e13850 [GtkMenu], event=0x555557528100) at gtkmain.c:2490 tmp = <optimized out> handled_event = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_propagate_event" #29 0x00007ffff757c55b in IA__gtk_main_do_event (event=0x555557528100) at gtkmain.c:1685 event_widget = <optimized out> grab_widget = 0x55555721a2b0 [GtkImageMenuItem] window_group = <optimized out> rewritten_event = <optimized out> tmp_list = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_main_do_event" #30 0x00007ffff71d3c7c in gdk_event_dispatch (source=source@entry=0x555555e47040, callback=<optimized out>, user_data=<optimized out>) at gdkevents-x11.c:2403 display = <optimized out> event = 0x555557528100 #31 0x00007ffff39d2345 in g_main_dispatch (context=0x555555e47130) at gmain.c:2784 dispatch = 0x7ffff71d3c30 <gdk_event_dispatch> was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = 0x0 cb_data = 0x0 current_source_link = {data = 0x555555e47040, next = 0x0} need_destroy = <optimized out> source = 0x555555e47040 current = 0x555555e9ce00 i = 0 #32 g_main_context_dispatch (context=context@entry=0x555555e47130) at gmain.c:3288 No locals. #33 0x00007ffff39d2688 in g_main_context_iterate (context=0x555555e47130, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3359 max_priority = 2147483647 timeout = -1 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x555556826c80 #34 0x00007ffff39d2ae2 in g_main_loop_run (loop=0x55555769a900) at gmain.c:3553 __PRETTY_FUNCTION__ = "g_main_loop_run" #35 0x000055555560b228 in app_run (full_prog_name=<optimized out>, filenames=<optimized out>, alternate_system_gimprc=0x0, alternate_gimprc=0x0, session_name=<optimized out>, batch_interpreter=0x0, batch_commands=0x0, as_new=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) at app.c:256 update_status_func = <optimized out> gimp = 0x555555eae000 [Gimp] config = 0x555555ec8290 [GimpRc] loop = 0x55555769a900 swap_is_ok = 1 #36 0x000055555560ace6 in main (argc=1, argv=0x7fffffffe008) at main.c:440 context = 0x555555dc1230 error = 0x0 abort_message = <optimized out> basename = <optimized out> i = <optimized out> (gdb) thread apply all bt full Thread 5 (Thread 0x7fffd4336700 (LWP 2282)): #0 pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238 No locals. #1 0x00007ffff3a11e25 in g_cond_wait_until (cond=cond@entry=0x7fffdc002e68, mutex=mutex@entry=0x7fffdc002e60, end_time=end_time@entry=1327159142) at gthread-posix.c:859 ts = {tv_sec = 1327, tv_nsec = 159142000} status = <optimized out> #2 0x00007ffff39a8951 in g_async_queue_pop_intern_unlocked (queue=queue@entry=0x7fffdc002e60, wait=wait@entry=1, end_time=end_time@entry=1327159142) at gasyncqueue.c:424 retval = <optimized out> __PRETTY_FUNCTION__ = "g_async_queue_pop_intern_unlocked" #3 0x00007ffff39a8f9a in g_async_queue_timeout_pop (queue=0x7fffdc002e60, timeout=timeout@entry=15000000) at gasyncqueue.c:545 end_time = 1327159142 retval = <optimized out> #4 0x00007ffff39f6b82 in g_thread_pool_wait_for_new_pool () at gthreadpool.c:169 pool = <optimized out> local_max_idle_time = 15000 local_wakeup_thread_serial = <optimized out> local_max_unused_threads = 2 last_wakeup_thread_serial = 0 have_relayed_thread_marker = <optimized out> #5 g_thread_pool_thread_proxy (data=<optimized out>) at gthreadpool.c:366 free_pool = <optimized out> task = 0x2 pool = <optimized out> #6 0x00007ffff39f6385 in g_thread_proxy (data=0x55555769d000) at gthread.c:798 thread = 0x55555769d000 #7 0x00007ffff3775d15 in start_thread (arg=0x7fffd4336700) at pthread_create.c:308 __res = <optimized out> pd = 0x7fffd4336700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736753526528, -1608830635868594848, 1, 140737354125312, 140736753526528, 140736884399440, 1608877334015335776, 1608822873825697120}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = 0 pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> #8 0x00007ffff34a4c4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 No locals. Thread 4 (Thread 0x7fffe1227700 (LWP 2280)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 No locals. #1 0x00007ffff3a11d2f in g_cond_wait (cond=cond@entry=0x555555ecbe08, mutex=mutex@entry=0x555555ecbe00) at gthread-posix.c:750 _g_boolean_var_ = <optimized out> status = <optimized out> #2 0x00007ffff39a896b in g_async_queue_pop_intern_unlocked (queue=0x555555ecbe00, wait=wait@entry=1, end_time=end_time@entry=-1) at gasyncqueue.c:421 retval = <optimized out> __PRETTY_FUNCTION__ = "g_async_queue_pop_intern_unlocked" #3 0x00007ffff39a8e76 in g_async_queue_pop_unlocked (queue=<optimized out>) at gasyncqueue.c:477 __PRETTY_FUNCTION__ = "g_async_queue_pop_unlocked" #4 0x00007ffff39f6bfd in g_thread_pool_wait_for_new_task (pool=0x555555ecbe70) at gthreadpool.c:247 task = <optimized out> #5 g_thread_pool_thread_proxy (data=<optimized out>) at gthreadpool.c:298 task = 0x0 pool = 0x555555ecbe70 #6 0x00007ffff39f6385 in g_thread_proxy (data=0x555555ecb0a0) at gthread.c:798 thread = 0x555555ecb0a0 #7 0x00007ffff3775d15 in start_thread (arg=0x7fffe1227700) at pthread_create.c:308 __res = <optimized out> pd = 0x7fffe1227700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736970520320, -1608830635868594848, 1, 140737354125312, 140736970520320, 93825002159728, 1608782647703199072, 1608822873825697120}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = 0 pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> #8 0x00007ffff34a4c4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 No locals. Thread 3 (Thread 0x7fffe1a28700 (LWP 2279)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185 No locals. #1 0x00007ffff3a11d2f in g_cond_wait (cond=cond@entry=0x555555ecbe08, mutex=mutex@entry=0x555555ecbe00) at gthread-posix.c:750 _g_boolean_var_ = <optimized out> status = <optimized out> #2 0x00007ffff39a896b in g_async_queue_pop_intern_unlocked (queue=0x555555ecbe00, wait=wait@entry=1, end_time=end_time@entry=-1) at gasyncqueue.c:421 retval = <optimized out> __PRETTY_FUNCTION__ = "g_async_queue_pop_intern_unlocked" #3 0x00007ffff39a8e76 in g_async_queue_pop_unlocked (queue=<optimized out>) at gasyncqueue.c:477 __PRETTY_FUNCTION__ = "g_async_queue_pop_unlocked" #4 0x00007ffff39f6bfd in g_thread_pool_wait_for_new_task (pool=0x555555ecbe70) at gthreadpool.c:247 task = <optimized out> #5 g_thread_pool_thread_proxy (data=<optimized out>) at gthreadpool.c:298 task = 0x0 pool = 0x555555ecbe70 #6 0x00007ffff39f6385 in g_thread_proxy (data=0x555555ecb050) at gthread.c:798 thread = 0x555555ecb050 #7 0x00007ffff3775d15 in start_thread (arg=0x7fffe1a28700) at pthread_create.c:308 __res = <optimized out> pd = 0x7fffe1a28700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736978913024, -1608830635868594848, 1, 140737354125312, 140736978913024, 93825002159728, 1608781548728442208, 1608822873825697120}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = 0 pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> #8 0x00007ffff34a4c4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 No locals. Thread 2 (Thread 0x7fffe2229700 (LWP 2278)): #0 0x00007ffff349b3ed in poll () at ../sysdeps/unix/syscall-template.S:81 No locals. #1 0x00007ffff39d261c in g_main_context_poll (priority=2147483647, n_fds=3, fds=0x7fffdc0010c0, timeout=-1, context=0x555555e9ff90) at gmain.c:3653 poll_func = 0x7ffff39e0920 <g_poll> #2 g_main_context_iterate (context=0x555555e9ff90, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3354 max_priority = 2147483647 timeout = -1 some_ready = <optimized out> nfds = 3 allocated_nfds = <optimized out> fds = 0x7fffdc0010c0 #3 0x00007ffff39d2ae2 in g_main_loop_run (loop=0x555555e9ff20) at gmain.c:3553 __PRETTY_FUNCTION__ = "g_main_loop_run" #4 0x00007ffff471a616 in gdbus_shared_thread_func (user_data=0x555555e9ff60) at gdbusprivate.c:277 data = 0x555555e9ff60 #5 0x00007ffff39f6385 in g_thread_proxy (data=0x555555ea0c50) at gthread.c:798 thread = 0x555555ea0c50 #6 0x00007ffff3775d15 in start_thread (arg=0x7fffe2229700) at pthread_create.c:308 __res = <optimized out> pd = 0x7fffe2229700 now = <optimized out> unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140736987305728, -1608830635868594848, 1, 140737354125312, 140736987305728, 93825001979744, 1608784843505229152, 1608822873825697120}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = 0 pagesize_m1 = <optimized out> sp = <optimized out> freesize = <optimized out> #7 0x00007ffff34a4c4d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113 No locals. Thread 1 (Thread 0x7ffff7fb19c0 (LWP 2274)): #0 IA__FcConfigSetCurrent (config=config@entry=0x0) at fccfg.c:428 cfg = 0x555556727bc0 #1 0x00005555558d4500 in gimp_fonts_reset (gimp=gimp@entry=0x555555eae000 [Gimp]) at gimp-fonts.c:122 __PRETTY_FUNCTION__ = "gimp_fonts_reset" #2 0x0000555555823ba0 in gimp_real_exit (gimp=gimp@entry=0x555555eae000 [Gimp], force=<optimized out>) at gimp.c:737 __PRETTY_FUNCTION__ = "gimp_real_exit" #3 0x0000555555821f59 in gimp_marshal_BOOLEAN__BOOLEAN (closure=0x555555e9a220, return_value=0x7fffffffc7c0, n_param_values=<optimized out>, param_values=0x7fffffffc870, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gimpmarshal.c:85 callback = 0x555555823b10 <gimp_real_exit> cc = <optimized out> data1 = 0x555555eae000 data2 = <optimized out> v_return = <optimized out> __PRETTY_FUNCTION__ = "gimp_marshal_BOOLEAN__BOOLEAN" #4 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e9a220, return_value=return_value@entry=0x7fffffffc7c0, n_param_values=2, param_values=param_values@entry=0x7fffffffc870, invocation_hint=invocation_hint@entry=0x7fffffffc810) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0xb0 in_marshal = 0 real_closure = 0x555555e9a200 __PRETTY_FUNCTION__ = "g_closure_invoke" #5 0x00007ffff3ed3c70 in signal_emit_unlocked_R (node=node@entry=0x555555e9a270, detail=detail@entry=0, instance=instance@entry=0x555555eae000, emission_return=emission_return@entry=0x7fffffffc940, instance_and_params=instance_and_params@entry=0x7fffffffc870) at gsignal.c:3605 accumulator = 0x555555e9a2e0 emission = {next = 0x7fffffffd260, instance = 0x555555eae000, ihint = {signal_id = 153, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 93825001977088} class_closure = 0x555555e9a220 hlist = 0x555555f57430 handler_list = <optimized out> return_accu = 0x7fffffffc7c0 accu = {g_type = 20, 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 = 153 max_sequential_handler_number = 39246 return_value_altered = 1 #6 0x00007ffff3edb9aa in g_signal_emit_valist (instance=0x555555eae000, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcac8) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fffffffc870 signal_return_type = 20 param_values = 0x7fffffffc888 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #7 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x555555eae000, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffcba0, reg_save_area = 0x7fffffffcae0}} #8 0x000055555582506d in gimp_exit (gimp=0x555555eae000 [Gimp], force=0) at gimp.c:1049 handled = 32767 __PRETTY_FUNCTION__ = "gimp_exit" #9 0x00007ffff3ec1c40 in g_closure_invoke (closure=0x555555f637a0, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffcdb0, invocation_hint=invocation_hint@entry=0x7fffffffcd50) at gclosure.c:777 marshal = 0x7ffff3ec3a70 <g_cclosure_marshal_VOID__VOID> marshal_data = 0x0 in_marshal = 0 real_closure = 0x555555f63780 __PRETTY_FUNCTION__ = "g_closure_invoke" #10 0x00007ffff3ed3ef8 in signal_emit_unlocked_R (node=node@entry=0x555556a11ae0, detail=detail@entry=0, instance=instance@entry=0x5555570b8a30, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffcdb0) at gsignal.c:3567 tmp = <optimized out> handler = 0x5555570ba010 accumulator = 0x0 emission = {next = 0x0, instance = 0x5555570b8a30, ihint = {signal_id = 369, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4} class_closure = 0x5555569c6d40 hlist = 0x5555570ba010 handler_list = <optimized out> return_accu = 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 = 369 max_sequential_handler_number = 39246 return_value_altered = 1 #11 0x00007ffff3edc24f in g_signal_emit_valist (instance=0x5555570b8a30, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffcff8) at gsignal.c:3315 instance_and_params = 0x7fffffffcdb0 signal_return_type = 4 param_values = 0x7fffffffcdc8 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #12 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x5555570b8a30, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffd0d0, reg_save_area = 0x7fffffffd010}} #13 0x00007ffff74a5908 in _gtk_action_emit_activate (action=0x5555570b8a30 [GimpAction]) at gtkaction.c:795 group = 0x555555e36490 [GimpActionGroup] #14 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e81110, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fffffffd2d0, invocation_hint=invocation_hint@entry=0x7fffffffd270) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0x378 in_marshal = 0 real_closure = 0x555555e810f0 __PRETTY_FUNCTION__ = "g_closure_invoke" #15 0x00007ffff3ed3813 in signal_emit_unlocked_R (node=node@entry=0x555555e811c0, detail=detail@entry=0, instance=instance@entry=0x55555721a2b0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffffffd2d0) at gsignal.c:3497 accumulator = 0x0 emission = {next = 0x7fffffffd860, instance = 0x55555721a2b0, ihint = {signal_id = 98, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 93825013978640} class_closure = 0x555555e81110 hlist = 0x0 handler_list = <optimized out> return_accu = 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 = 98 max_sequential_handler_number = 39246 return_value_altered = <optimized out> #16 0x00007ffff3edc24f in g_signal_emit_valist (instance=0x55555721a2b0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffd518) at gsignal.c:3315 instance_and_params = 0x7fffffffd2d0 signal_return_type = 4 param_values = 0x7fffffffd2e8 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #17 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x55555721a2b0, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fffffffd5f0, reg_save_area = 0x7fffffffd530}} #18 0x00007ffff76b0edc in IA__gtk_widget_activate (widget=widget@entry=0x55555721a2b0 [GtkImageMenuItem]) at gtkwidget.c:5048 __PRETTY_FUNCTION__ = "IA__gtk_widget_activate" #19 0x00007ffff7594e8d in IA__gtk_menu_shell_activate_item (menu_shell=0x555556e13850 [GtkMenu], menu_item=0x55555721a2b0 [GtkImageMenuItem], force_deactivate=<optimized out>) at gtkmenushell.c:1283 slist = <optimized out> shells = 0x555557797b70 = {0x555556e13850, 0x555556f04110} deactivate = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_menu_shell_activate_item" #20 0x00007ffff759528c in gtk_menu_shell_button_release (widget=0x555556e13850 [GtkMenu], event=<optimized out>) at gtkmenushell.c:710 submenu = 0x0 menu_item = 0x55555721a2b0 [GtkImageMenuItem] deactivate = 1 menu_shell = 0x555556e13850 [GtkMenu] priv = 0x555556e13980 #21 0x00007ffff757e42c in _gtk_marshal_BOOLEAN__BOXED (closure=0x555555e41380, return_value=0x7fffffffd820, n_param_values=<optimized out>, param_values=0x7fffffffd8d0, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:86 callback = 0x7ffff7588310 <gtk_menu_button_release> cc = <optimized out> data1 = 0x555556e13850 data2 = 0x555555e4d910 v_return = <optimized out> __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED" #22 0x00007ffff3ec1c40 in g_closure_invoke (closure=closure@entry=0x555555e41380, return_value=return_value@entry=0x7fffffffd820, n_param_values=2, param_values=param_values@entry=0x7fffffffd8d0, invocation_hint=invocation_hint@entry=0x7fffffffd870) at gclosure.c:777 marshal = 0x7ffff3ec08a0 <g_type_class_meta_marshal> marshal_data = 0x160 in_marshal = 0 real_closure = 0x555555e41360 __PRETTY_FUNCTION__ = "g_closure_invoke" #23 0x00007ffff3ed3c70 in signal_emit_unlocked_R (node=node@entry=0x555555e413b0, detail=detail@entry=0, instance=instance@entry=0x555556e13850, emission_return=emission_return@entry=0x7fffffffd9a0, instance_and_params=instance_and_params@entry=0x7fffffffd8d0) at gsignal.c:3605 accumulator = 0x555555e41420 emission = {next = 0x0, instance = 0x555556e13850, ihint = {signal_id = 38, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 93825001854640} class_closure = 0x555555e41380 hlist = 0x0 handler_list = <optimized out> return_accu = 0x7fffffffd820 accu = {g_type = 20, 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 = 38 max_sequential_handler_number = 39246 return_value_altered = 0 #24 0x00007ffff3edb9aa in g_signal_emit_valist (instance=0x555556e13850, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fffffffdb28) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fffffffd8d0 signal_return_type = 20 param_values = 0x7fffffffd8e8 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #25 0x00007ffff3edc432 in g_signal_emit (instance=instance@entry=0x555556e13850, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fffffffdc00, reg_save_area = 0x7fffffffdb40}} #26 0x00007ffff76b1e8e in gtk_widget_event_internal (widget=widget@entry=0x555556e13850 [GtkMenu], event=event@entry=0x555557528100) at gtkwidget.c:5017 signal_num = <optimized out> return_val = 0 #27 0x00007ffff76b2209 in IA__gtk_widget_event (widget=widget@entry=0x555556e13850 [GtkMenu], event=event@entry=0x555557528100) at gtkwidget.c:4814 __PRETTY_FUNCTION__ = "IA__gtk_widget_event" #28 0x00007ffff757c1f4 in IA__gtk_propagate_event (widget=0x555556e13850 [GtkMenu], event=0x555557528100) at gtkmain.c:2490 tmp = <optimized out> handled_event = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_propagate_event" #29 0x00007ffff757c55b in IA__gtk_main_do_event (event=0x555557528100) at gtkmain.c:1685 event_widget = <optimized out> grab_widget = 0x55555721a2b0 [GtkImageMenuItem] window_group = <optimized out> rewritten_event = <optimized out> tmp_list = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_main_do_event" #30 0x00007ffff71d3c7c in gdk_event_dispatch (source=source@entry=0x555555e47040, callback=<optimized out>, user_data=<optimized out>) at gdkevents-x11.c:2403 display = <optimized out> event = 0x555557528100 #31 0x00007ffff39d2345 in g_main_dispatch (context=0x555555e47130) at gmain.c:2784 dispatch = 0x7ffff71d3c30 <gdk_event_dispatch> was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = 0x0 cb_data = 0x0 current_source_link = {data = 0x555555e47040, next = 0x0} need_destroy = <optimized out> source = 0x555555e47040 current = 0x555555e9ce00 i = 0 #32 g_main_context_dispatch (context=context@entry=0x555555e47130) at gmain.c:3288 No locals. #33 0x00007ffff39d2688 in g_main_context_iterate (context=0x555555e47130, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3359 max_priority = 2147483647 timeout = -1 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x555556826c80 #34 0x00007ffff39d2ae2 in g_main_loop_run (loop=0x55555769a900) at gmain.c:3553 __PRETTY_FUNCTION__ = "g_main_loop_run" #35 0x000055555560b228 in app_run (full_prog_name=<optimized out>, filenames=<optimized out>, alternate_system_gimprc=0x0, alternate_gimprc=0x0, session_name=<optimized out>, batch_interpreter=0x0, batch_commands=0x0, as_new=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) at app.c:256 update_status_func = <optimized out> gimp = 0x555555eae000 [Gimp] config = 0x555555ec8290 [GimpRc] loop = 0x55555769a900 swap_is_ok = 1 #36 0x000055555560ace6 in main (argc=1, argv=0x7fffffffe008) at main.c:440 context = 0x555555dc1230 error = 0x0 abort_message = <optimized out> basename = <optimized out> i = <optimized out> (gdb) Version-Release number of selected component (if applicable): gimp-2.8.2-6.fc19.x86_64 How reproducible: Every exit Steps to Reproduce: 1. 2. 3. Actual results: Expected results: Additional info:
I am still seeing segfault every time I exit from gimp with the latest rawhide version: gimp-2.8.2-7.fc19.x86_64 More I can do to debug/help? Core was generated by `gimp-2.8'. Program terminated with signal 11, Segmentation fault. #0 IA__FcConfigSetCurrent (config=config@entry=0x0) at fccfg.c:428 428 if (!config->fonts[FcSetSystem]) Missing separate debuginfos, use: debuginfo-install libopenraw-0.0.9-3.fc19.x86_64 nss-softokn-freebl-3.14.2-2.fc19.x86_64 (gdb) set pagination off (gdb) bt full #0 IA__FcConfigSetCurrent (config=config@entry=0x0) at fccfg.c:428 cfg = 0x7f77c0be2320 #1 0x00007f77be4009c0 in gimp_fonts_reset (gimp=gimp@entry=0x7f77c0354000 [Gimp]) at gimp-fonts.c:122 __PRETTY_FUNCTION__ = "gimp_fonts_reset" #2 0x00007f77be3577c0 in gimp_real_exit (gimp=0x7f77c0354000 [Gimp], force=<optimized out>) at gimp.c:737 __PRETTY_FUNCTION__ = "gimp_real_exit" #3 0x00007f77be356174 in gimp_marshal_BOOLEAN__BOOLEAN (closure=0x7f77c03402d0, return_value=0x7fff61e2d340, n_param_values=<optimized out>, param_values=0x7fff61e2d3f0, invocation_hint=<optimized out>, marshal_data=0x7f77be357730 <gimp_real_exit>) at gimpmarshal.c:85 callback = <optimized out> cc = <optimized out> data1 = 0x7f77c0354000 data2 = <optimized out> v_return = <optimized out> __PRETTY_FUNCTION__ = "gimp_marshal_BOOLEAN__BOOLEAN" #4 0x00007f77b9f5dc40 in g_closure_invoke (closure=closure@entry=0x7f77c03402d0, return_value=return_value@entry=0x7fff61e2d340, n_param_values=2, param_values=param_values@entry=0x7fff61e2d3f0, invocation_hint=invocation_hint@entry=0x7fff61e2d390) at gclosure.c:777 marshal = 0x7f77b9f5c8a0 <g_type_class_meta_marshal> marshal_data = 0xb0 in_marshal = 0 real_closure = 0x7f77c03402b0 __PRETTY_FUNCTION__ = "g_closure_invoke" #5 0x00007f77b9f6fc70 in signal_emit_unlocked_R (node=node@entry=0x7f77c0340320, detail=detail@entry=0, instance=instance@entry=0x7f77c0354000, emission_return=emission_return@entry=0x7fff61e2d4c0, instance_and_params=instance_and_params@entry=0x7fff61e2d3f0) at gsignal.c:3605 accumulator = 0x7f77c0349320 emission = {next = 0x7fff61e2dde0, instance = 0x7f77c0354000, ihint = {signal_id = 153, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 140152302490816} class_closure = 0x7f77c03402d0 hlist = 0x7f77c03fd430 handler_list = <optimized out> return_accu = 0x7fff61e2d340 accu = {g_type = 20, 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 = 153 max_sequential_handler_number = 82987 return_value_altered = 1 #6 0x00007f77b9f779aa in g_signal_emit_valist (instance=0x7f77c0354000, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fff61e2d648) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fff61e2d3f0 signal_return_type = 20 param_values = 0x7fff61e2d408 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #7 0x00007f77b9f78432 in g_signal_emit (instance=instance@entry=0x7f77c0354000, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fff61e2d720, reg_save_area = 0x7fff61e2d660}} #8 0x00007f77be358e7d in gimp_exit (gimp=0x7f77c0354000 [Gimp], force=0) at gimp.c:1049 handled = 32631 __PRETTY_FUNCTION__ = "gimp_exit" #9 0x00007f77b9f5dc40 in g_closure_invoke (closure=0x7f77c1564670, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fff61e2d930, invocation_hint=invocation_hint@entry=0x7fff61e2d8d0) at gclosure.c:777 marshal = 0x7f77b9f5fa70 <g_cclosure_marshal_VOID__VOID> marshal_data = 0x0 in_marshal = 0 real_closure = 0x7f77c1564650 __PRETTY_FUNCTION__ = "g_closure_invoke" #10 0x00007f77b9f6fef8 in signal_emit_unlocked_R (node=node@entry=0x7f77c0ec3630, detail=detail@entry=0, instance=instance@entry=0x7f77c1562210, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff61e2d930) at gsignal.c:3567 tmp = <optimized out> handler = 0x7f77c0487750 accumulator = 0x0 emission = {next = 0x0, instance = 0x7f77c1562210, ihint = {signal_id = 369, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 4} class_closure = 0x7f77c0ec14c0 hlist = 0x7f77c0487750 handler_list = <optimized out> return_accu = 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 = 369 max_sequential_handler_number = 82987 return_value_altered = 1 #11 0x00007f77b9f7824f in g_signal_emit_valist (instance=0x7f77c1562210, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fff61e2db78) at gsignal.c:3315 instance_and_params = 0x7fff61e2d930 signal_return_type = 4 param_values = 0x7fff61e2d948 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #12 0x00007f77b9f78432 in g_signal_emit (instance=instance@entry=0x7f77c1562210, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff61e2dc50, reg_save_area = 0x7fff61e2db90}} #13 0x00007f77bd547908 in _gtk_action_emit_activate (action=0x7f77c1562210 [GimpAction]) at gtkaction.c:795 group = 0x7f77c02ddc90 [GimpActionGroup] #14 0x00007f77b9f5dc40 in g_closure_invoke (closure=closure@entry=0x7f77c0327160, return_value=return_value@entry=0x0, n_param_values=1, param_values=param_values@entry=0x7fff61e2de50, invocation_hint=invocation_hint@entry=0x7fff61e2ddf0) at gclosure.c:777 marshal = 0x7f77b9f5c8a0 <g_type_class_meta_marshal> marshal_data = 0x378 in_marshal = 0 real_closure = 0x7f77c0327140 __PRETTY_FUNCTION__ = "g_closure_invoke" #15 0x00007f77b9f6f813 in signal_emit_unlocked_R (node=node@entry=0x7f77c0327210, detail=detail@entry=0, instance=instance@entry=0x7f77a5157aa0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fff61e2de50) at gsignal.c:3497 accumulator = 0x0 emission = {next = 0x7fff61e2e3e0, instance = 0x7f77a5157aa0, ihint = {signal_id = 98, detail = 0, run_type = G_SIGNAL_RUN_FIRST}, state = EMISSION_RUN, chain_type = 140152314540384} class_closure = 0x7f77c0327160 hlist = 0x0 handler_list = <optimized out> return_accu = 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 = 98 max_sequential_handler_number = 82987 return_value_altered = <optimized out> #16 0x00007f77b9f7824f in g_signal_emit_valist (instance=0x7f77a5157aa0, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fff61e2e098) at gsignal.c:3315 instance_and_params = 0x7fff61e2de50 signal_return_type = 4 param_values = 0x7fff61e2de68 node = <optimized out> i = <optimized out> n_params = 0 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #17 0x00007f77b9f78432 in g_signal_emit (instance=instance@entry=0x7f77a5157aa0, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 24, fp_offset = 48, overflow_arg_area = 0x7fff61e2e170, reg_save_area = 0x7fff61e2e0b0}} #18 0x00007f77bd752edc in IA__gtk_widget_activate (widget=widget@entry=0x7f77a5157aa0 [GtkImageMenuItem]) at gtkwidget.c:5048 __PRETTY_FUNCTION__ = "IA__gtk_widget_activate" #19 0x00007f77bd636e8d in IA__gtk_menu_shell_activate_item (menu_shell=0x7f77c12ba930 [GtkMenu], menu_item=0x7f77a5157aa0 [GtkImageMenuItem], force_deactivate=<optimized out>) at gtkmenushell.c:1283 slist = <optimized out> shells = 0x7f77c303de90 = {0x7f77c12ba930, 0x7f77c138a0f0} deactivate = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_menu_shell_activate_item" #20 0x00007f77bd63728c in gtk_menu_shell_button_release (widget=0x7f77c12ba930 [GtkMenu], event=<optimized out>) at gtkmenushell.c:710 submenu = 0x0 menu_item = 0x7f77a5157aa0 [GtkImageMenuItem] deactivate = 1 menu_shell = 0x7f77c12ba930 [GtkMenu] priv = 0x7f77c12baa60 #21 0x00007f77bd62042c in _gtk_marshal_BOOLEAN__BOXED (closure=0x7f77c02e8540, return_value=0x7fff61e2e3a0, n_param_values=<optimized out>, param_values=0x7fff61e2e450, invocation_hint=<optimized out>, marshal_data=<optimized out>) at gtkmarshalers.c:86 callback = 0x7f77bd62a310 <gtk_menu_button_release> cc = <optimized out> data1 = 0x7f77c12ba930 data2 = 0x7f77c02fab80 v_return = <optimized out> __PRETTY_FUNCTION__ = "_gtk_marshal_BOOLEAN__BOXED" #22 0x00007f77b9f5dc40 in g_closure_invoke (closure=closure@entry=0x7f77c02e8540, return_value=return_value@entry=0x7fff61e2e3a0, n_param_values=2, param_values=param_values@entry=0x7fff61e2e450, invocation_hint=invocation_hint@entry=0x7fff61e2e3f0) at gclosure.c:777 marshal = 0x7f77b9f5c8a0 <g_type_class_meta_marshal> marshal_data = 0x160 in_marshal = 0 real_closure = 0x7f77c02e8520 __PRETTY_FUNCTION__ = "g_closure_invoke" #23 0x00007f77b9f6fc70 in signal_emit_unlocked_R (node=node@entry=0x7f77c02e8590, detail=detail@entry=0, instance=instance@entry=0x7f77c12ba930, emission_return=emission_return@entry=0x7fff61e2e520, instance_and_params=instance_and_params@entry=0x7fff61e2e450) at gsignal.c:3605 accumulator = 0x7f77c02e8600 emission = {next = 0x0, instance = 0x7f77c12ba930, ihint = {signal_id = 38, detail = 0, run_type = G_SIGNAL_RUN_LAST}, state = EMISSION_RUN, chain_type = 140152302368512} class_closure = 0x7f77c02e8540 hlist = 0x0 handler_list = <optimized out> return_accu = 0x7fff61e2e3a0 accu = {g_type = 20, 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 = 38 max_sequential_handler_number = 82987 return_value_altered = 0 #24 0x00007f77b9f779aa in g_signal_emit_valist (instance=0x7f77c12ba930, signal_id=<optimized out>, detail=0, var_args=var_args@entry=0x7fff61e2e6a8) at gsignal.c:3325 return_value = {g_type = 20, 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}}} error = 0x0 rtype = 20 static_scope = 0 instance_and_params = 0x7fff61e2e450 signal_return_type = 20 param_values = 0x7fff61e2e468 node = <optimized out> i = <optimized out> n_params = 1 __PRETTY_FUNCTION__ = "g_signal_emit_valist" #25 0x00007f77b9f78432 in g_signal_emit (instance=instance@entry=0x7f77c12ba930, signal_id=<optimized out>, detail=detail@entry=0) at gsignal.c:3371 var_args = {{gp_offset = 32, fp_offset = 48, overflow_arg_area = 0x7fff61e2e780, reg_save_area = 0x7fff61e2e6c0}} #26 0x00007f77bd753e8e in gtk_widget_event_internal (widget=widget@entry=0x7f77c12ba930 [GtkMenu], event=event@entry=0x7f77c31b7640) at gtkwidget.c:5017 signal_num = <optimized out> return_val = 0 #27 0x00007f77bd754209 in IA__gtk_widget_event (widget=widget@entry=0x7f77c12ba930 [GtkMenu], event=event@entry=0x7f77c31b7640) at gtkwidget.c:4814 __PRETTY_FUNCTION__ = "IA__gtk_widget_event" #28 0x00007f77bd61e1f4 in IA__gtk_propagate_event (widget=0x7f77c12ba930 [GtkMenu], event=0x7f77c31b7640) at gtkmain.c:2490 tmp = <optimized out> handled_event = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_propagate_event" #29 0x00007f77bd61e55b in IA__gtk_main_do_event (event=0x7f77c31b7640) at gtkmain.c:1685 event_widget = <optimized out> grab_widget = 0x7f77a5157aa0 [GtkImageMenuItem] window_group = <optimized out> rewritten_event = <optimized out> tmp_list = <optimized out> __PRETTY_FUNCTION__ = "IA__gtk_main_do_event" #30 0x00007f77bd275c7c in gdk_event_dispatch (source=source@entry=0x7f77c02ee090, callback=<optimized out>, user_data=<optimized out>) at gdkevents-x11.c:2403 display = <optimized out> event = 0x7f77c31b7640 #31 0x00007f77b9a6e345 in g_main_dispatch (context=0x7f77c02ee180) at gmain.c:2784 dispatch = 0x7f77bd275c30 <gdk_event_dispatch> was_in_call = 0 user_data = 0x0 callback = 0x0 cb_funcs = 0x0 cb_data = 0x0 current_source_link = {data = 0x7f77c02ee090, next = 0x0} need_destroy = <optimized out> source = 0x7f77c02ee090 current = 0x7f77c0342e00 i = 0 #32 g_main_context_dispatch (context=context@entry=0x7f77c02ee180) at gmain.c:3288 No locals. #33 0x00007f77b9a6e688 in g_main_context_iterate (context=0x7f77c02ee180, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3359 max_priority = 2147483647 timeout = 3609 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x7f77c1c44300 #34 0x00007f77b9a6eae2 in g_main_loop_run (loop=0x7f77c1afaba0) at gmain.c:3553 __PRETTY_FUNCTION__ = "g_main_loop_run" #35 0x00007f77be159358 in app_run (full_prog_name=<optimized out>, filenames=<optimized out>, alternate_system_gimprc=0x0, alternate_gimprc=0x0, session_name=<optimized out>, batch_interpreter=0x0, batch_commands=0x0, as_new=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) at app.c:256 update_status_func = <optimized out> gimp = 0x7f77c0354000 [Gimp] config = 0x7f77c036e290 [GimpRc] loop = 0x7f77c1afaba0 swap_is_ok = 1 #36 0x00007f77be158e26 in main (argc=1, argv=0x7fff61e2eb78) at main.c:440 context = 0x7f77c0268230 error = 0x0 abort_message = <optimized out> basename = <optimized out> i = <optimized out> (gdb)
Hmm, the gimp_fonts_reset() function seems to be broken, FcConfigSetCurrent(NULL) isn't defined to work, or do what the comment describes: --- 8< --- gimp_fonts_reset() --- [...] /* We clear the default config here, so any subsequent fontconfig use will * reinit the library with defaults. (Maybe we should call FcFini here too?) */ FcConfigSetCurrent (NULL); [...] --- >8 --- ... then ... --- 8< --- q(FcConfig *config) --- [...] FcConfig *cfg; retry: cfg = fc_atomic_ptr_get (&_fcConfig); if (config == cfg) return FcTrue; if (!config->fonts[FcSetSystem]) --- >8 ---
Tom, are you aware of anything that is "non-custom" on your system related to fonts? I'm just curious why you seem to be the only one running into this issue.
Created attachment 693395 [details] Output of "rpm -qa I have not intentionally customized my system: I typically run Koji/Rawhide, and have a "continuously updated Rawhide", but mostly stock, system. The only "non custom" aspects that I can think of are the packages I sometimes have to remove in order to unblock Rawhide dependency borkages. Although I keep track of these, and try to reinstall when the dependencies are fixed, I may have missed a few over the years.... I believe the only "locally modified/built" package I have installed is Audacity: locally built to get support for mp3 files. I attach a sorted list of the output of "rpm -qa \*onts\*" in case there is something obvious....
I could reproduce the crash on Rawhide now, apparently gimp builds from Fedora up to version 18 didn't crash when dereferencing the NULL pointer in FcConfigSetCurrent(). I guess some change in the toolchain (we went from gcc 4.7 to 4.8 for Rawhide) caused this piece of code to be optimized differently and actually trip over the NULL pointer. Anyway, I've committed a fix upstream and will build/push an update once I've had a chance to test it locally.
I've found the culprit now -- with previous versions of fontconfig the line in question is this one: [...] if (!config->fonts) [...] As "fonts" is an array, this doesn't really dereference, but resolve to "if (!(config + <offset of fonts member>))" which is nonsensical, but doesn't crash if NULL is passed.
Great! Thanks for hunting this out.... Strange piece of code. I'll watch for the update and test when it arrives in koji.
gimp-2.8.4-1.fc17 has been submitted as an update for Fedora 17. https://admin.fedoraproject.org/updates/gimp-2.8.4-1.fc17
gimp-2.8.4-1.fc18 has been submitted as an update for Fedora 18. https://admin.fedoraproject.org/updates/gimp-2.8.4-1.fc18
Updated to gimp-2.8.4-1.fc19.x86_64. No longer crashes on exit for me. Thanks!
Package gimp-2.8.4-1.fc17: * should fix your issue, * was pushed to the Fedora 17 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing gimp-2.8.4-1.fc17' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2013-2000/gimp-2.8.4-1.fc17 then log in and leave karma (feedback).
gimp-2.8.4-1.fc18 has been pushed to the Fedora 18 stable repository. If problems still persist, please make note of it in this bug report.
gimp-2.8.4-1.fc17 has been pushed to the Fedora 17 stable repository. If problems still persist, please make note of it in this bug report.