]> git.pld-linux.org Git - packages/SDL2.git/commitdiff
upstream patch for fixing crash with wayland driver; rel 2 auto/th/SDL2-2.0.16-2
authorJan Palus <atler@pld-linux.org>
Sat, 16 Oct 2021 17:53:42 +0000 (19:53 +0200)
committerJan Palus <atler@pld-linux.org>
Sat, 16 Oct 2021 17:53:42 +0000 (19:53 +0200)
affects wlroots based compositors

SDL2.spec
wayland-sizeless-config.patch [new file with mode: 0644]

index 5209a755ca0e3fae4de8f94fbb66839a714682aa..01ca363c629ae0b3fb19910ba4db2838cb07b627 100644 (file)
--- a/SDL2.spec
+++ b/SDL2.spec
@@ -61,12 +61,13 @@ Summary(pl.UTF-8):  SDL (Simple DirectMedia Layer) - Biblioteka do gier/multimedi
 Summary(zh_CN.UTF-8):  SDL (Simple DirectMedia Layer) Generic APIs - 游戏/多媒体库
 Name:          SDL2
 Version:       2.0.16
-Release:       1
+Release:       2
 License:       Zlib (BSD-like)
 Group:         Libraries
 Source0:       http://www.libsdl.org/release/%{name}-%{version}.tar.gz
 # Source0-md5: 98b8a1535a757ea1d03ae44e2fb20247
 Patch0:                %{name}-config.patch
+Patch1:                wayland-sizeless-config.patch
 URL:           http://www.libsdl.org/
 %{?with_kms:BuildRequires:     Mesa-libgbm-devel >= 11.1.0}
 %{?with_directfb:BuildRequires:        DirectFB-devel >= 1.0.0}
@@ -214,6 +215,7 @@ SDL - przykładowe programy.
 %prep
 %setup -q
 %patch0 -p1
+%patch1 -p1
 
 %build
 %{__libtoolize}
diff --git a/wayland-sizeless-config.patch b/wayland-sizeless-config.patch
new file mode 100644 (file)
index 0000000..75cc97b
--- /dev/null
@@ -0,0 +1,32 @@
+From 63285c2562ba05e5bd113e7aaa003d1eeeec52d9 Mon Sep 17 00:00:00 2001
+From: Ethan Lee <flibitijibibo@gmail.com>
+Date: Wed, 11 Aug 2021 09:59:43 -0400
+Subject: [PATCH] wayland: Ignore stateless/sizeless configs when starting in
+ fullscreen mode
+
+---
+ src/video/wayland/SDL_waylandwindow.c | 10 ++++++++--
+ 1 file changed, 8 insertions(+), 2 deletions(-)
+
+diff --git a/src/video/wayland/SDL_waylandwindow.c b/src/video/wayland/SDL_waylandwindow.c
+index 025dd30eeb..451d33b767 100644
+--- a/src/video/wayland/SDL_waylandwindow.c
++++ b/src/video/wayland/SDL_waylandwindow.c
+@@ -219,9 +219,15 @@ handle_configure_xdg_toplevel(void *data,
+             /* Foolishly do what the compositor says here. If it's wrong, don't
+              * blame us, we were explicitly instructed to do this.
++             *
++             * UPDATE: Nope, we can't actually do that, the compositor may give
++             * us a completely stateless, sizeless configure, with which we have
++             * to enforce our own state anyway.
+              */
+-            window->w = width;
+-            window->h = height;
++            if (width != 0 && height != 0) {
++                window->w = width;
++                window->h = height;
++            }
+             /* This part is good though. */
+             if (window->flags & SDL_WINDOW_ALLOW_HIGHDPI) {
This page took 0.192634 seconds and 4 git commands to generate.