cwensley / pablodraw

PabloDraw is an Ansi/Ascii text and RIPscrip vector graphic art editor/viewer with multi-user capabilities.
MIT License
324 stars 22 forks source link

Crash while browsing files on Linux #23

Closed k5jat closed 2 years ago

k5jat commented 5 years ago

I'm running the latest mono from the project ppa on updated Linux Mint 18.3.

When using the sidebar to navigate, I can only click on 4 or 5 files and then it crashes.

To reproduce the error: run "mono --runtime=4.0 --server PabloDraw.exe" Click on various ans and asc files in sidebar Crash

at <0xffffffff> at (wrapper managed-to-native) GLib.ToggleRef.g_object_remove_toggle_ref (intptr,GLib.ToggleRef/ToggleNotifyHandler,intptr) [0x0000a] in :0 at GLib.ToggleRef.Free () [0x00091] in :0 at GLib.Object.PerformQueuedUnrefs () [0x0004a] in :0 at GLib.Timeout/TimeoutProxy.Invoke (intptr) [0x00000] in :0 at GLib.SourceProxy.HandlerInternal (intptr) [0x00000] in :0 at (wrapper native-to-managed) GLib.SourceProxy.HandlerInternal (intptr) <0x00072> at <0xffffffff> at (wrapper managed-to-native) Gtk.Application.gtk_main () [0x00002] in <7aab76e87bce48a4b45cf7fa613cb70c>:0 at Gtk.Application.Run () [0x00000] in <7aab76e87bce48a4b45cf7fa613cb70c>:0 at Eto.Platform.GtkSharp.ApplicationHandler.Run (string[]) [0x00060] in :0 at Eto.Forms.Application.Run (string[]) [0x00006] in :0 at PabloDraw.Program.Run () [0x001d2] in <6e43903dea9b4530a03b35f00ebe95be>:0 at PabloDraw.Startup.Main () [0x0000d] in <6e43903dea9b4530a03b35f00ebe95be>:0 at (wrapper runtime-invoke) object.runtime_invoke_void (object,intptr,intptr,intptr) [0x0004c] in <04750267503a43e5929c1d1ba19daf3e>:0 /proc/self/maps: 00400000-00843000 r-xp 00000000 08:01 6030305 /usr/bin/mono-sgen 00a43000-00a49000 r--p 00443000 08:01 6030305 /usr/bin/mono-sgen 00a49000-00a4f000 rw-p 00449000 08:01 6030305 /usr/bin/mono-sgen 00a4f000-00ae0000 rw-p 00000000 00:00 0 02a03000-05004000 rw-p 00000000 00:00 0 [heap] 4170c000-4171c000 rwxp 00000000 00:00 0 418dd000-419fd000 rwxp 00000000 00:00 0 7fcf24000000-7fcf242df000 rw-p 00000000 00:00 0 7fcf242df000-7fcf28000000 ---p 00000000 00:00 0 7fcf28b54000-7fcf28bd4000 rw-p 00000000 00:00 0 7fcf28bd8000-7fcf28c58000 rw-p 00000000 00:00 0 7fcf28c5c000-7fcf28c64000 rw-p 00000000 00:00 0 7fcf28ca4000-7fcf28cdc000 rw-p 00000000 00:00 0 7fcf28ce0000-7fcf28d60000 rw-p 00000000 00:00 0 7fcf28d64000-7fcf28de4000 rw-p 00000000 00:00 0 7fcf28de8000-7fcf28e68000 rw-p 00000000 00:00 0 7fcf28e6c000-7fcf28eec000 rw-p 00000000 00:00 0 7fcf28ef0000-7fcf28f28000 rw-p 00000000 00:00 0 7fcf28f68000-7fcf28f70000 rw-p 00000000 00:00 0 7fcf28f74000-7fcf28ff4000 rw-p 00000000 00:00 0 7fcf28ff8000-7fcf29078000 rw-p 00000000 00:00 0 7fcf2907c000-7fcf290fc000 rw-p 00000000 00:00 0 7fcf29100000-7fcf29200000 rw-p 00000000 00:00 0 7fcf2926c000-7fcf292ec000 rw-p 00000000 00:00 0 7fcf292f0000-7fcf29370000 rw-p 00000000 00:00 0 Memory around native instruction pointer (0x7fcf4589cd99): 0x7fcf4589cd89 83 00 00 00 48 8b 07 48 85 c0 0f 84 9f 00 00 00 ....H..H........ 0x7fcf4589cd99 48 8b 38 48 81 ff fc 03 00 00 48 89 fa 77 58 48 H.8H......H..wXH 0x7fcf4589cda9 8d 05 b1 d8 21 00 48 c1 ea 02 48 8b 14 d0 48 85 ....!.H...H...H. 0x7fcf4589cdb9 d2 74 0b f6 42 16 04 b8 01 00 00 00 75 30 48 85 .t..B.......u0H.

Native stacktrace:

mono() [0x52018b]
mono() [0x520488]
mono() [0x4b407f]
mono() [0x432ff2]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x11390) [0x7fcf4ab51390]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_type_check_instance+0x19) [0x7fcf4589cd99]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_handlers_disconnect_matched+0x24) [0x7fcf45891514]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(gtk_accel_label_set_accel_closure+0xa7) [0x7fcf3c65a267]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(gtk_accel_label_set_accel_widget+0xaf) [0x7fcf3c65a49f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x7153b) [0x7fcf3c65a53b]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_closure_invoke+0x9f) [0x7fcf45877eff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x224de) [0x7fcf4588a4de]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0xfbc) [0x7fcf45892d5c]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x8f) [0x7fcf4589308f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x157db0) [0x7fcf3c740db0]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_object_run_dispose+0x48) [0x7fcf4587e748]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x1174c2) [0x7fcf3c7004c2]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0xb7cff) [0x7fcf3c6a0cff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_closure_invoke+0x9f) [0x7fcf45877eff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x224de) [0x7fcf4588a4de]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0xfbc) [0x7fcf45892d5c]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x8f) [0x7fcf4589308f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x157db0) [0x7fcf3c740db0]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_object_run_dispose+0x48) [0x7fcf4587e748]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x142e55) [0x7fcf3c72be55]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0xb7cff) [0x7fcf3c6a0cff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_closure_invoke+0x9f) [0x7fcf45877eff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x224de) [0x7fcf4588a4de]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0xfbc) [0x7fcf45892d5c]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x8f) [0x7fcf4589308f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x157db0) [0x7fcf3c740db0]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_object_run_dispose+0x48) [0x7fcf4587e748]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x13fd62) [0x7fcf3c728d62]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_closure_invoke+0x9f) [0x7fcf45877eff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x224de) [0x7fcf4588a4de]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0xfbc) [0x7fcf45892d5c]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x8f) [0x7fcf4589308f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x157db0) [0x7fcf3c740db0]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_object_run_dispose+0x48) [0x7fcf4587e748]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x142e55) [0x7fcf3c72be55]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0xb7cff) [0x7fcf3c6a0cff]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_closure_invoke+0x145) [0x7fcf45877fa5]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x224de) [0x7fcf4588a4de]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0xfbc) [0x7fcf45892d5c]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x8f) [0x7fcf4589308f]
/usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0(+0x157db0) [0x7fcf3c740db0]
/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_object_unref+0x125) [0x7fcf4587cd25]
[0x4193282d]

Segmentation fault Crash Reporter has timed out, sending SIGSEGV

k5jat commented 5 years ago

I'm attaching the json crash report...

mono_crash.3174bc1e7.3.json.tar.gz

willvincent commented 5 years ago

I get very frequent crashes too, on manjaro. when editing. Makes it really tough to work with, with any level of confidence, auto-save doesn't seem to work either.

My most recent crash report: mono_crash.3174bc1e7.0.tar.gz

tracker1 commented 4 years ago

Seeing the same issue a year later... :-(

laurentdebricon commented 4 years ago

@tracker1 checkout http://www.andyh.org/moebius/ working great on ubuntu 18.04, with the .deb

ericolito commented 3 years ago

Have you guys tried downgrading the gtk-sharp-2 library to gtk-sharp-2-2.12.42 or below? This solved the constant crashing issue for me. Pablodraw just isn't that well maintained anymore..

cwensley commented 3 years ago

Hey guys, I have some changes coming (soon) that will make PabloDraw use Gtk+3. It will also be self contained native executable in that you won't have to install anything (e.g. mono, gtk-sharp, etc).

cwensley commented 3 years ago

Hey guys! Try this update (x64 executable): https://github.com/cwensley/pablodraw/suites/1933523028/artifacts/38152839

It no longer requires mono or gtk-sharp to run, and uses Gtk+3. It appears to work pretty well for me using ubuntu 20.10.

I can provide other builds (x86, arm) if necessary.

k5jat commented 3 years ago

I'm getting a 404 on that article...

cwensley commented 3 years ago

bah, ok. I've published it here: https://github.com/cwensley/pablodraw/releases/tag/3.3.0-alpha1

cwensley commented 3 years ago

Any update if the new build fixes the issue?

tracker1 commented 3 years ago

@cwensley can't really comment on this... haven't booted to my linux partition in close to a year...

cwensley commented 2 years ago

I believe the latest 3.3.0-beta1 will fix this. I'll close the issue for now but if it's still happening let me know and we can re-open.