Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

segfault converting at command line under Linux #45

Closed
Sembiance opened this issue Feb 13, 2022 · 0 comments · Fixed by #55
Closed

segfault converting at command line under Linux #45

Sembiance opened this issue Feb 13, 2022 · 0 comments · Fixed by #55

Comments

@Sembiance
Copy link

Running very latest github source code, built and run on Linux (dotnet-sdk 6.0.101 and gtk-sharp 2.12.45 and gtk+ 3.24.30), I can launch PabloDraw and with the GUI and I can open a .RIP file and save it as a PNG.

However attempting to do so via command line with PabloDraw --convert=DRAGON01.RIP --out=out.png fails:

Converting 'DRAGON01.RIP' (rip.rip) to 'out.png' (image.png)

(process:15282): Gtk-CRITICAL **: 09:31:39.677: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(process:15282): Gtk-CRITICAL **: 09:31:39.677: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

(process:15282): Gtk-CRITICAL **: 09:31:39.677: _gtk_style_provider_private_get_settings: assertion 'GTK_IS_STYLE_PROVIDER_PRIVATE (provider)' failed

Thread 1 "PabloDraw" received signal SIGSEGV, Segmentation fault.
0x00007ffff01a90f0 in ?? () from /usr/lib64/libgtk-3.so.0
(gdb) bt
#0  0x00007ffff01a90f0 in  () at /usr/lib64/libgtk-3.so.0
#1  0x00007ffff004de54 in  () at /usr/lib64/libgtk-3.so.0
#2  0x00007ffff006e5c8 in  () at /usr/lib64/libgtk-3.so.0
#3  0x00007ffff005989a in  () at /usr/lib64/libgtk-3.so.0
#4  0x00007ffff006e498 in  () at /usr/lib64/libgtk-3.so.0
#5  0x00007ffff005a1d2 in  () at /usr/lib64/libgtk-3.so.0
#6  0x00007ffff08d7143 in g_type_create_instance () at /usr/lib64/libgobject-2.0.so.0
#7  0x00007ffff08bdbd5 in  () at /usr/lib64/libgobject-2.0.so.0
#8  0x00007ffff08bf10d in g_object_new_with_properties () at /usr/lib64/libgobject-2.0.so.0
#9  0x00007ffff08bfab9 in g_object_new () at /usr/lib64/libgobject-2.0.so.0
#10 0x00007ffff0076d7b in  () at /usr/lib64/libgtk-3.so.0
#11 0x00007ffff025c8dd in  () at /usr/lib64/libgtk-3.so.0
#12 0x00007ffff08d7143 in g_type_create_instance () at /usr/lib64/libgobject-2.0.so.0
#13 0x00007ffff08bdbd5 in  () at /usr/lib64/libgobject-2.0.so.0
#14 0x00007ffff08bf10d in g_object_new_with_properties () at /usr/lib64/libgobject-2.0.so.0
#15 0x00007ffff08bfab9 in g_object_new () at /usr/lib64/libgobject-2.0.so.0
#16 0x00007fffeff83a9c in gtk_alignment_new () at /usr/lib64/libgtk-3.so.0
#17 0x00007fff7e85bfe8 in  ()
#18 0x0000000000000000 in  ()

Researching online, it looks like a call to gtk_init must not have been made:
Zren/plasma-hud#20
https://github.com/mono/gtk-sharp/blob/main/gtk/Application.cs

However ideally, PabloDraw would detect that I'm just attempting to do a command line conversion and would never even try to load GTK or any other GUI stuff.

The older 3.2.1 version works fine (ran with mono PabloDraw.Console.exe)

File I'm converting: https://telparia.com/fileFormatSamples/image/ripScrip/DRAGON01.RIP

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant