The label feature tends to crash. To reproduce, try creating a few labels and click on the ‘select label’ button. After a few clicks on the label or the canvas, Tux Paint usually crashes.
Karl, can you by any chance reproduce the issue like so:
1. launch tux paint
2. create labels
3. save
4. click around until segfault
5. re-launch tux paint
6. open image
7. click around, and get segfault again
If so, can you share the saved file (from ~/.tuxpaint/saved/) so others can test & see if we can replicate the issue & track down the cause?
You can also try building wit "DEBUG_FLAGS:=-g in Makefile, and DEBUG (and also VERBOSE) enabled in src/debug.h. (Do make clean && make.)
Between Tux Paint's debug output while you interact, and/or running Tux Paint under a debugger (gdb tuxpaint, then run), you may be able to help pinpoint it yourself.
A LOT has changed in the Label area recently. I assumed, based on your other recent bug reports, that you were using the in-development version from the Git repo, so tagged this as a v0.9.29 bug. If you're seeing the behavior in the last official release (0.9.28 from June 2022), please edit this ticket.
Thanks!!!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I could not reproduce with SDL1.2 nor SDL2, instead I could reproduce with libsdl1.2-compat:
In Debian Sid install libsdl1.2-compat-dev, which will uninstall SDL1.2,then recompile current git.
gdb tuxpaint
run --startblank --nosound --nosysfonts
select Labels, click on the screen , type a new label and hit [Enter]
Click on the "edit label" button ->crash
bt shows the following:
~~~Thread 1 "tuxpaint" received signal SIGSEGV, Segmentation fault.
0x00007ffff5797716 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
(gdb) bt
Thread 1 "tuxpaint" received signal SIGSEGV, Segmentation fault.
0x00007ffff5797716 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
(gdb) bt
#0 0x00007ffff5797716 in () at /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#1 0x00007ffff7f6f137 in SDL_UpperBlit () at /lib/x86_64-linux-gnu/libSDL-1.2.so.0
#2 0x000055555556290f in highlight_label_nodes () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:25017
#3 0x000055555559c2fc in mainloop () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:4308
#4 0x0000555555560a32 in main (argc=<optimized out="">, argv=<optimized out="">) at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:28042
#0 0x00007ffff5797716 in () at /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#1 0x00007ffff7f6f137 in SDL_UpperBlit () at /lib/x86_64-linux-gnu/libSDL-1.2.so.0
#2 0x000055555556290f in highlight_label_nodes () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:25017
#3 0x000055555559c2fc in mainloop () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:4308
#4 0x0000555555560a32 in main (argc=<optimized out="">, argv=<optimized out="">) at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:28042
~~~</optimized></optimized></optimized></optimized>
Valgrind output from the point where I click on the "edit labels" button is attached as it is too big
Since we're focusing on the SDL2.0 version of Tux Paint any more, do we feel it's worth keeping this ticket open, or close it as a "wontfix", since I feel like we're done maintaining the SDL1.2 version. (The 2.0 version already has new feature development happening in it, for the first time ever!)
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The errror message on the console says:
and dmesg show lines like these:
Karl, can you by any chance reproduce the issue like so:
1. launch tux paint
2. create labels
3. save
4. click around until segfault
5. re-launch tux paint
6. open image
7. click around, and get segfault again
If so, can you share the saved file (from
~/.tuxpaint/saved/) so others can test & see if we can replicate the issue & track down the cause?You can also try building wit "
DEBUG_FLAGS:=-ginMakefile, andDEBUG(and alsoVERBOSE) enabled insrc/debug.h. (Domake clean && make.)Between Tux Paint's debug output while you interact, and/or running Tux Paint under a debugger (
gdb tuxpaint, thenrun), you may be able to help pinpoint it yourself.A LOT has changed in the Label area recently. I assumed, based on your other recent bug reports, that you were using the in-development version from the Git repo, so tagged this as a v0.9.29 bug. If you're seeing the behavior in the last official release (0.9.28 from June 2022), please edit this ticket.
Thanks!!!
I could not reproduce with SDL1.2 nor SDL2, instead I could reproduce with libsdl1.2-compat:
In Debian Sid install libsdl1.2-compat-dev, which will uninstall SDL1.2,then recompile current git.
gdb tuxpaint
run --startblank --nosound --nosysfonts
select Labels, click on the screen , type a new label and hit [Enter]
Click on the "edit label" button ->crash
bt shows the following:
~~~Thread 1 "tuxpaint" received signal SIGSEGV, Segmentation fault.
0x00007ffff5797716 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
(gdb) bt
Thread 1 "tuxpaint" received signal SIGSEGV, Segmentation fault.
0x00007ffff5797716 in ?? () from /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
(gdb) bt
#0 0x00007ffff5797716 in () at /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#1 0x00007ffff7f6f137 in SDL_UpperBlit () at /lib/x86_64-linux-gnu/libSDL-1.2.so.0
#2 0x000055555556290f in highlight_label_nodes () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:25017
#3 0x000055555559c2fc in mainloop () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:4308
#4 0x0000555555560a32 in main (argc=<optimized out="">, argv=<optimized out="">) at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:28042
#0 0x00007ffff5797716 in () at /lib/x86_64-linux-gnu/libSDL2-2.0.so.0
#1 0x00007ffff7f6f137 in SDL_UpperBlit () at /lib/x86_64-linux-gnu/libSDL-1.2.so.0
#2 0x000055555556290f in highlight_label_nodes () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:25017
#3 0x000055555559c2fc in mainloop () at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:4308
#4 0x0000555555560a32 in main (argc=<optimized out="">, argv=<optimized out="">) at /mnt/nvme0n1p1/pere/tuxpaint/gitautenticat/tuxpaint/tuxpaint.c:28042
~~~</optimized></optimized></optimized></optimized>
Valgrind output from the point where I click on the "edit labels" button is attached as it is too big
HTH
Pere
I cannot reproduce this because my system has both SDL1.2 and SDL2.0, and no "compat" library. When I build
master, my Tux Paint looks like this:Since we're focusing on the SDL2.0 version of Tux Paint any more, do we feel it's worth keeping this ticket open, or close it as a "wontfix", since I feel like we're done maintaining the SDL1.2 version. (The 2.0 version already has new feature development happening in it, for the first time ever!)
Closing.