diff options
author | lukefromdc <[email protected]> | 2025-02-25 14:53:11 -0500 |
---|---|---|
committer | lukefromdc <[email protected]> | 2025-02-25 14:53:11 -0500 |
commit | d382e118a72d6337ecf36580c6c0afdefb377ece (patch) | |
tree | 05069234dcff9a90d0172419f7e4d56ed9e6c407 /shell | |
parent | db229c01a3ed39622cf5f5e94cccc42e3eb50c87 (diff) | |
download | atril-d382e118a72d6337ecf36580c6c0afdefb377ece.tar.bz2 atril-d382e118a72d6337ecf36580c6c0afdefb377ece.tar.xz |
Wayland: stop segfaults on some systemsfix-wlcrash
*Put a missed instance of gdk_x11_screen_get_screen_number behind x11-only selectors
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ev-application.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/shell/ev-application.c b/shell/ev-application.c index 56279aca..4e97d636 100644 --- a/shell/ev-application.c +++ b/shell/ev-application.c @@ -419,9 +419,18 @@ on_register_uri_cb (GObject *source_object, g_variant_builder_add (&builder, "{sv}", "display", g_variant_new_string (gdk_display_get_name (gdk_screen_get_display (data->screen)))); - g_variant_builder_add (&builder, "{sv}", - "screen", - g_variant_new_int32 (gdk_x11_screen_get_screen_number (data->screen))); + + if (GDK_IS_X11_DISPLAY (gdk_display_get_default())){ + g_variant_builder_add (&builder, "{sv}", + "screen", + g_variant_new_int32 (gdk_x11_screen_get_screen_number (data->screen))); + } + else{ + /*Do not crash on wayland, use the first monitor for now*/ + g_variant_builder_add (&builder, "{sv}", + "screen", + g_variant_new_int32 (1)); + } if (data->dest) { switch (ev_link_dest_get_dest_type (data->dest)) { case EV_LINK_DEST_TYPE_PAGE_LABEL: |