Bug 26469

Summary: Gimp crash while fixing a layer after moving foreground selection
Product: Mageia Reporter: Wolf Duttlinger <wolf>
Component: RPM PackagesAssignee: Mageia Bug Squad <bugsquad>
Status: RESOLVED WORKSFORME QA Contact:
Severity: normal    
Priority: Normal CC: lewyssmith
Version: Cauldron   
Target Milestone: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Source RPM: gimp-2.10.10-1.6.mga7.src.rpm CVE:
Status comment:

Description Wolf Duttlinger 2020-04-10 13:16:11 CEST
Selected an area using the foreground selection tool. Moved the selection and did choose layer, fix (or combine - "Vereinigen").

The Crash log dialog did appear and I did what I was told to be doing...

```
GNU Image Manipulation Program version 2.10.10
git-describe: GIMP_2_10_8-775-g596f855749
C compiler:
	Using built-in specs.
	COLLECT_GCC=gcc
	COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-mageia-linux-gnu/8.4.0/lto-wrapper
	Target: x86_64-mageia-linux-gnu
	Configured with: ../configure --prefix=/usr --libexecdir=/usr/lib --with-slibdir=/lib64 --with-pkgversion='Mageia 8.4.0-1.mga7' --with-bugurl=https://bugs.mageia.org/ --mandir=/usr/share/man --infodir=/usr/share/info --enable-checking=release --enable-languages=c,c++,ada,fortran,objc,obj-c++ --enable-linker-build-id --build=x86_64-mageia-linux-gnu --host=x86_64-mageia-linux-gnu --with-cpu=generic --with-system-zlib --enable-threads=posix --with-linker-hash-style=gnu --enable-shared --enable-long-long --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --enable-ssp --disable-libssp --disable-libffi --disable-werror --with-isl --with-python-dir=/lib/python2.7/site-packages --enable-lto
	Thread model: posix
	gcc version 8.4.0 (Mageia 8.4.0-1.mga7) 
	
using GEGL version 0.4.16 (compiled against version 0.4.16)
using GLib version 2.60.2 (compiled against version 2.60.2)
using GdkPixbuf version 2.38.1 (compiled against version 2.38.1)
using GTK+ version 2.24.32 (compiled against version 2.24.32)
using Pango version 1.43.0 (compiled against version 1.43.0)
using Fontconfig version 2.13.1 (compiled against version 2.13.1)
using Cairo version 1.16.0 (compiled against version 1.16.0)

```
> fatal error: Speicherzugriffsfehler

Stack trace:
```
/usr/lib64/libgimpbase-2.0.so.0(gimp_stack_trace_print+0x397)[0x7fa951756c37]
/usr/bin/gimp-2.10[0x4997a0]
/usr/bin/gimp-2.10[0x499b86]
/usr/bin/gimp-2.10[0x49a297]
/usr/lib64/libpthread.so.0(+0x13570)[0x7fa950c88570]
/usr/lib64/libgobject-2.0.so.0(g_type_check_instance_cast+0x10)[0x7fa950f33dc0]
/usr/bin/gimp-2.10[0x62f940]
/usr/bin/gimp-2.10[0x63189b]
/usr/bin/gimp-2.10(gimp_marshal_BOOLEAN__OBJECT_POINTER+0x68)[0x733ae8]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x2658d)[0x7fa950f2258d]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x466)[0x7fa950f2b276]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/bin/gimp-2.10(gimp_container_view_select_item+0xfe)[0x5e670e]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/bin/gimp-2.10[0x799d70]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26e84)[0x7fa950f22e84]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/bin/gimp-2.10[0x50e02f]
/usr/bin/gimp-2.10(gimp_tool_control+0xc8)[0x542408]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgtk-x11-2.0.so.0(+0xb81be)[0x7fa9519261be]
/usr/lib64/libgtk-x11-2.0.so.0(+0x12d70b)[0x7fa95199b70b]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x466)[0x7fa950f2b276]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgtk-x11-2.0.so.0(+0x23e19c)[0x7fa951aac19c]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_main_do_event+0x513)[0x7fa951999fe3]
/usr/lib64/libgimpwidgets-2.0.so.0(+0x3a6e3)[0x7fa951ce26e3]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x2658d)[0x7fa950f2258d]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_by_name+0x4df)[0x7fa950f2c69f]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/bin/gimp-2.10(gimp_item_tree_remove_item+0x1e5)[0x7c6535]
/usr/bin/gimp-2.10(gimp_image_remove_layer+0x25e)[0x79e32e]
/usr/bin/gimp-2.10(floating_sel_anchor+0x108)[0x7ccf08]
/usr/bin/gimp-2.10(layers_anchor_cmd_callback+0x48)[0x4bf9f8]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26d35)[0x7fa950f22d35]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgtk-x11-2.0.so.0(+0x73df0)[0x7fa9518e1df0]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x26e84)[0x7fa950f22e84]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0xdbe)[0x7fa950f2bbce]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_widget_activate+0x7a)[0x7fa951aaafca]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_menu_shell_activate_item+0x15d)[0x7fa9519ad53d]
/usr/lib64/libgtk-x11-2.0.so.0(+0x13f7c6)[0x7fa9519ad7c6]
/usr/lib64/libgtk-x11-2.0.so.0(+0x12d70b)[0x7fa95199b70b]
/usr/lib64/libgobject-2.0.so.0(g_closure_invoke+0x19d)[0x7fa950f0fd8d]
/usr/lib64/libgobject-2.0.so.0(+0x2658d)[0x7fa950f2258d]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit_valist+0x466)[0x7fa950f2b276]
/usr/lib64/libgobject-2.0.so.0(g_signal_emit+0x82)[0x7fa950f2c1b2]
/usr/lib64/libgtk-x11-2.0.so.0(+0x23e19c)[0x7fa951aac19c]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_propagate_event+0xac)[0x7fa9519999cc]
/usr/lib64/libgtk-x11-2.0.so.0(gtk_main_do_event+0x2bb)[0x7fa951999d8b]
/usr/lib64/libgdk-x11-2.0.so.0(+0x5a72c)[0x7fa95181272c]
/usr/lib64/libglib-2.0.so.0(g_main_context_dispatch+0x135)[0x7fa950e2a665]
/usr/lib64/libglib-2.0.so.0(+0x4d9e8)[0x7fa950e2a9e8]
/usr/lib64/libglib-2.0.so.0(g_main_loop_run+0xb2)[0x7fa950e2acd2]
/usr/bin/gimp-2.10(app_run+0x322)[0x499012]
/usr/bin/gimp-2.10(main+0x346)[0x498976]
/usr/lib64/libc.so.6(__libc_start_main+0xeb)[0x7fa950acfb0b]
/usr/bin/gimp-2.10(_start+0x2a)[0x498ada]

```
Comment 1 Lewis Smith 2020-04-10 22:09:34 CEST
Thank you for the report. Can we take it that this can be reproduced?
We may have language problems; I know no German.

(In reply to Wolf Duttlinger from comment #0)
> Selected an area using the foreground selection tool.
> Moved the selection
> and did choose layer,
> fix (or combine - "Vereinigen").
I have wrestled long trying to reproduce your fault, but need a much more detailed & exact description of what you describe briefly above.
I cracked doing a foreground selection, but then? The possibilities are many. I did manage in the end to move the selection+content (leaving the original content intact), and anchor it into a pre-existing different layer.

"Moved the selection" : do you mean just the selection outline, or its contents? 
How did you do the move? With Alt+Ctrl|Shift click & drag; or using the Move tool?
This creates a floating selection; normally you cannot do anything until it is anchored - without choice, to the layer below. I think.

"and did choose layer" : how did you do this? Once you have a floating selection, in its own temporary layer, you cannot choose another layer. I think.

"fix (or combine" : probably 'anchor' - to the layer below, without any choice that I could see.

CC: (none) => lewyssmith

Comment 2 Wolf Duttlinger 2020-04-11 16:05:39 CEST
Thank you very much for following up on this one!!!!


Sorry für being imprecise. I was under time pressure to get the picture done.


Reproducible: yesterday it happened twice in succession.

(Afterwards I saved as xcf after each step and was able to finish, I also did close a few other programs)


Tried to reproduce it just now. Didn't happen again.

Steps:

Foreground selection. Select.

Ctrl-x

Ctrl-v

Move hovering selection (schwebende Auswahl) with mouse (might not be the best idea, but I'm really not anywhere near a pro, just need to move a face closer to another one)

Select menu - layers - anchor layer (ctrl-h)

Error


As I said, not reproducible anymore. Could have been a memory constraint situation???? Picture was 4032x3024 jpg. Selection roughly 700x1100, oval, "hairy" boundaries.


Again sorry that I can't be more precise. What I wanted to achieve I could. No requirement from my side for further follow-up.
Comment 3 Lewis Smith 2020-04-11 21:03:18 CEST
Thank you for the detailed description of exactly what you did; and which I could easily replicate. As with yourself - no problems. (I learned that Ctrl/X, Ctrl/V, Move selection in floating layer, leaves the original space background filled!).

> I also did close a few other programs
> not reproducible anymore
> Could have been a memory constraint situation?
Good news. Your speculative diagnostic might be the case.

> What I wanted to achieve I could.
> No requirement from my side for further follow-up
Thank you for this helpful remark. I am closing the bug, but you can always re-open it if the same thing happens again.

Resolution: (none) => WORKSFORME
Status: NEW => RESOLVED