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

Random Crash #5659

Closed
IlyaSulli opened this issue May 4, 2024 · 1 comment
Closed

Random Crash #5659

IlyaSulli opened this issue May 4, 2024 · 1 comment
Labels

Comments

@IlyaSulli
Copy link

Operating System

Linux

(Linux only) Distribution

Ubuntu

(Linux only) Desktop Environment

GNOME

(Linux Only) Display Server

None

Installation Method

Software App

Xournal++ Version

1.2.3

libgtk Version

3.24.38

Bug Description

While opening a new document, it failed to open. I use a mounted google drive using rclone

Expected Behaviour

Should open new document

Steps to Reproduce

  1. Press new document

Additional Context

Date: Sat May 4 17:43:20 2024
Error: signal 11
Xournal++ version 1.2.3
Git commit c6970f4 from xournalpp/HEAD
Gtk version 3.24.38

[bt]: (0) /snap/xournalpp/94/usr/bin/xournalpp(+0xda893) [0x6119ea145893]
[bt]: (1) /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x72e19f005520]
[bt]: (2) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libcairo.so.2(cairo_get_target+0x4) [0x72e19f636864]
[bt]: (3) /snap/xournalpp/94/usr/bin/xournalpp(_ZNK3xoj4view18BaseStrokeToolView10createMaskEP6_cairo+0xc0) [0x6119ea2cb540]
[bt]: (4) /snap/xournalpp/94/usr/bin/xournalpp(_ZNK3xoj4view14StrokeToolView4drawEP6_cairo+0x170) [0x6119ea2c7070]
[bt]: (5) /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XojPageView21drawAndDeleteToolViewEPN3xoj4view8ToolViewERK5Range+0x81) [0x6119ea236f01]
[bt]: (6) /snap/xournalpp/94/usr/bin/xournalpp(_ZN13StrokeHandler20onButtonReleaseEventERK17PositionInputDatad+0x1db) [0x6119ea2a4f1b]
[bt]: (7) /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XojPageView20onButtonReleaseEventERK17PositionInputData+0x9b) [0x6119ea23949b]
[bt]: (8) /snap/xournalpp/94/usr/bin/xournalpp(_ZN15PenInputHandler9actionEndERK10InputEvent+0x104) [0x6119ea192aa4]
[bt]: (9) /snap/xournalpp/94/usr/bin/xournalpp(_ZN17MouseInputHandler10handleImplERK10InputEvent+0xdd) [0x6119ea1919ad]
[bt]: (10) /snap/xournalpp/94/usr/bin/xournalpp(_ZN12InputContext6handleEP9_GdkEvent+0x334) [0x6119ea1906f4]
[bt]: (11) /snap/xournalpp/94/usr/bin/xournalpp(_ZN3xoj4util6detail9wrap_implIXadL_ZN12InputContext13eventCallbackEP10_GtkWidgetP9_GdkEventPS3_EEbS8_JS5_S7_EEENSt11conditionalIX9is_same_vIbT0_EEiSA_E4typeEDpT2_Pv+0x10) [0x6119ea191080]
[bt]: (12) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x9b548) [0x72e19fd4b548]
[bt]: (13) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x16569) [0x72e19f865569]
[bt]: (14) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x2e1ab) [0x72e19f87d1ab]
[bt]: (15) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0x39) [0x72e19f8873f9]
[bt]: (16) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x93) [0x72e19f8874c3]
[bt]: (17) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x399d67) [0x72e1a0049d67]
[bt]: (18) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x22a800) [0x72e19feda800]
[bt]: (19) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(gtk_main_do_event+0x7f5) [0x72e19fedc7b5]
[bt]: (20) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgdk-3.so.0(+0x40e19) [0x72e19fbd4e19]
[bt]: (21) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgdk-3.so.0(+0x7dce6) [0x72e19fc11ce6]
[bt]: (22) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x5eedb) [0x72e19f751edb]
[bt]: (23) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x626a0) [0x72e19f7556a0]
[bt]: (24) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x72e19f755f63]
[bt]: (25) /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0(g_application_run+0x1a5) [0x72e19f9df0d5]
[bt]: (26) /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XournalMain3runEiPPc+0x60d) [0x6119ea148e0d]
[bt]: (27) /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x72e19efecd90]
[bt]: (28) /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x72e19efece40]
[bt]: (29) /snap/xournalpp/94/usr/bin/xournalpp(_start+0x25) [0x6119ea1448c5]

Try to get a better stacktrace...
[bt] #0 /snap/xournalpp/94/usr/bin/xournalpp(+0xdaf30) [0x6119ea145f30]
crashHandler(int) at /build/xournalpp/parts/xournalpp/src/src/core/control/CrashHandlerUnix.h:157
[bt] #1 /lib/x86_64-linux-gnu/libc.so.6(+0x42520) [0x72e19f005520]
__sigaction at ??:?
[bt] #2 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libcairo.so.2(cairo_get_target+0x4) [0x72e19f636864]
cairo_get_target at ??:?
[bt] #3 /snap/xournalpp/94/usr/bin/xournalpp(_ZNK3xoj4view18BaseStrokeToolView10createMaskEP6_cairo+0xc0) [0x6119ea2cb540]
xoj::view::BaseStrokeToolView::createMask(_cairo*) const at /build/xournalpp/parts/xournalpp/src/src/core/view/overlays/BaseStrokeToolView.cpp:50
[bt] #4 /snap/xournalpp/94/usr/bin/xournalpp(_ZNK3xoj4view14StrokeToolView4drawEP6_cairo+0x170) [0x6119ea2c7070]
_cairo* std::__exchange<_cairo*, decltype(nullptr)>(_cairo*&, decltype(nullptr)&&) at /usr/include/c++/11/bits/move.h:159 (discriminator 1)
[bt] #5 /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XojPageView21drawAndDeleteToolViewEPN3xoj4view8ToolViewERK5Range+0x81) [0x6119ea236f01]
XojPageView::drawAndDeleteToolView(xoj::view::ToolView*, Range const&) at /usr/include/x86_64-linux-gnu/c++/11/bits/gthr-default.h:779
[bt] #6 /snap/xournalpp/94/usr/bin/xournalpp(_ZN13StrokeHandler20onButtonReleaseEventERK17PositionInputDatad+0x1db) [0x6119ea2a4f1b]
void xoj::util::DispatchPoolxoj::view::StrokeToolView::dispatchAndClear<xoj::view::StrokeToolView::FinalizationRequest const&, Range>(xoj::view::StrokeToolView::FinalizationRequest const&, Range&&) const at /build/xournalpp/parts/xournalpp/src/src/util/include/util/DispatchPool.h:59
[bt] #7 /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XojPageView20onButtonReleaseEventERK17PositionInputData+0x9b) [0x6119ea23949b]
XojPageView::onButtonReleaseEvent(PositionInputData const&) at /build/xournalpp/parts/xournalpp/src/src/core/gui/PageView.cpp:630
[bt] #8 /snap/xournalpp/94/usr/bin/xournalpp(_ZN15PenInputHandler9actionEndERK10InputEvent+0x104) [0x6119ea192aa4]
PenInputHandler::actionEnd(InputEvent const&) at /build/xournalpp/parts/xournalpp/src/src/core/gui/inputdevices/PenInputHandler.cpp:425
[bt] #9 /snap/xournalpp/94/usr/bin/xournalpp(_ZN17MouseInputHandler10handleImplERK10InputEvent+0xdd) [0x6119ea1919ad]
MouseInputHandler::handleImpl(InputEvent const&) at /build/xournalpp/parts/xournalpp/src/src/core/gui/inputdevices/MouseInputHandler.cpp:77
[bt] #10 /snap/xournalpp/94/usr/bin/xournalpp(_ZN12InputContext6handleEP9_GdkEvent+0x334) [0x6119ea1906f4]
InputContext::handle(_GdkEvent*) at /build/xournalpp/parts/xournalpp/src/src/core/gui/inputdevices/InputContext.cpp:145
[bt] #11 /snap/xournalpp/94/usr/bin/xournalpp(_ZN3xoj4util6detail9wrap_implIXadL_ZN12InputContext13eventCallbackEP10_GtkWidgetP9_GdkEventPS3_EEbS8_JS5_S7_EEENSt11conditionalIX9is_same_vIbT0_EEiSA_E4typeEDpT2_Pv+0x10) [0x6119ea191080]
std::conditional<is_same_v<bool, bool>, int, bool>::type xoj::util::detail::wrap_impl<&InputContext::eventCallback, bool, InputContext*, _GtkWidget*, _GdkEvent*>(_GtkWidget*, _GdkEvent*, void*) at /build/xournalpp/parts/xournalpp/src/src/util/include/util/glib_casts.h:79
[bt] #12 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x9b548) [0x72e19fd4b548]
?? ??:0
[bt] #13 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x16569) [0x72e19f865569]
g_closure_invoke at ??:?
[bt] #14 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(+0x2e1ab) [0x72e19f87d1ab]
g_param_spec_variant at ??:?
[bt] #15 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit_valist+0x39) [0x72e19f8873f9]
g_signal_emit_valist at ??:?
[bt] #16 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0(g_signal_emit+0x93) [0x72e19f8874c3]
g_signal_emit at ??:?
[bt] #17 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x399d67) [0x72e1a0049d67]
gtk_requisition_copy at ??:?
[bt] #18 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(+0x22a800) [0x72e19feda800]
gtk_lock_button_set_permission at ??:?
[bt] #19 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgtk-3.so.0(gtk_main_do_event+0x7f5) [0x72e19fedc7b5]
gtk_main_do_event at ??:?
[bt] #20 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgdk-3.so.0(+0x40e19) [0x72e19fbd4e19]
gdk_drag_context_manage_dnd at ??:?
[bt] #21 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgdk-3.so.0(+0x7dce6) [0x72e19fc11ce6]
gdk_wayland_display_query_registry at ??:?
[bt] #22 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x5eedb) [0x72e19f751edb]
g_clear_list at ??:?
[bt] #23 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(+0x626a0) [0x72e19f7556a0]
g_get_monotonic_time at ??:?
[bt] #24 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0(g_main_context_iteration+0x33) [0x72e19f755f63]
g_main_context_iteration at ??:?
[bt] #25 /snap/xournalpp/94/gnome-platform/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0(g_application_run+0x1a5) [0x72e19f9df0d5]
g_application_run at ??:?
[bt] #26 /snap/xournalpp/94/usr/bin/xournalpp(_ZN11XournalMain3runEiPPc+0x60d) [0x6119ea148e0d]
XournalMain::run(int, char**) at /build/xournalpp/parts/xournalpp/src/src/core/control/XournalMain.cpp:709
[bt] #27 /lib/x86_64-linux-gnu/libc.so.6(+0x29d90) [0x72e19efecd90]
__libc_init_first at ??:?
[bt] #28 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0x80) [0x72e19efece40]
__libc_start_main at ??:?
[bt] #29 /snap/xournalpp/94/usr/bin/xournalpp(_start+0x25) [0x6119ea1448c5]
_start at ??:?

Execution log:

DEBUG : GLib-GIO :: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
DEBUG : GLib-GIO :: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ‘gio-vfs’
DEBUG : GLib :: unsetenv() is not thread-safe and should not be used after threads are created
MESSAGE : xopp :: TEXTDOMAINDIR = /snap/xournalpp/94/usr/share/locale, Platform-specific locale dir = /usr/share/xournalpp/../locale, chosen directory = /snap/xournalpp/94/usr/share/locale
INFO : xopp :: Loading plugins from: /snap/xournalpp/94/usr/share/xournalpp/plugins
INFO : xopp :: Loading plugins from: /home/ilya/snap/xournalpp/94/.config/xournalpp/plugins
MESSAGE : xopp :: Plugin "MigrateFontSizes" UI initialized
WARNING : -- :: atk-bridge: get_device_events_reply: unknown signature
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
WARNING : xopp :: Could not remove element from layer, it's not on the layer!
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
DEBUG : GLib :: g_unix_open_pipe() called with FD_CLOEXEC; please migrate to using O_CLOEXEC instead
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Discard impossible event - this is a sign of bugged hardware or drivers
MESSAGE : xopp :: Discard impossible event - this is a sign of bugged hardware or drivers
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
MESSAGE : xopp :: Autosaving to /home/ilya/gdrive/Obsidian/EchoVault/University/Modules/Year 1/LC Artificial Intelligence 1/Quizzes/.Tutorial8.autosave.xopp
WARNING : xopp :: [Crash Handler] Crashed with signal 11
WARNING : xopp :: [Crash Handler] Wrote crash log to: /home/ilya/snap/xournalpp/common/.cache/xournalpp/errorlogs/errorlog.20240504-174320.log

@IlyaSulli IlyaSulli added the bug label May 4, 2024
Febbe added a commit to Febbe/xournalpp that referenced this issue May 5, 2024
Febbe added a commit to Febbe/xournalpp that referenced this issue May 6, 2024
Febbe added a commit to Febbe/xournalpp that referenced this issue May 6, 2024
This introduces a SharedMask, which protects itself, holding a shared state to a Mask and a Mutex, protecting the Mask.
The solution might be a bit overkill, but it seems to be the easiest solution:

Mask in PageView.h can be manipulated in 2 ways:
The Mask, holding its data and the cairo_mask can be replaced completely.
The data of the mask can be manipulated.

Both operations must be protected by a mutex, or they must be immutable.
The state may be shared and the removal / replacement must not happen in between.

fixes xournalpp#5659
Febbe added a commit to Febbe/xournalpp that referenced this issue May 9, 2024
 - fixes xournalpp#5659
 - prevents a crash when the mask is not set
Febbe added a commit that referenced this issue May 10, 2024
 - fixes #5659
 - prevents a crash when the mask is not set
@bhennion
Copy link
Contributor

Fixed via #5662

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

No branches or pull requests

2 participants