wdisplays: fix for wlroots update.
This commit is contained in:
parent
33177c2a99
commit
9edf9ee8d8
2 changed files with 49 additions and 1 deletions
48
srcpkgs/wdisplays/patches/correct-protocol-version.patch
Normal file
48
srcpkgs/wdisplays/patches/correct-protocol-version.patch
Normal file
|
@ -0,0 +1,48 @@
|
|||
From 657e2966e556c78f121075c69fe1ba8d2b4dcb73 Mon Sep 17 00:00:00 2001
|
||||
From: Simon Ser <contact@emersion.fr>
|
||||
Date: Wed, 8 Jul 2020 11:57:35 +0200
|
||||
Subject: [PATCH] Use correct versions when binding globals
|
||||
|
||||
Changes to protocols aren't forward-compatible. It's not possible to use
|
||||
version n+1 when a client has been designed to work with version n. For
|
||||
instance in wlr-screencopy v5 a new event has been added. Binding to
|
||||
version 5 without upgrading the client leads to libwayland errors
|
||||
because libwayland doesn't know how to handle the event.
|
||||
|
||||
The client needs to maintain its own version requirements.
|
||||
|
||||
Closes: https://github.com/cyclopsian/wdisplays/issues/18
|
||||
---
|
||||
src/outputs.c | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/outputs.c b/src/outputs.c
|
||||
index 9ebf7e5..40410ec 100644
|
||||
--- src/outputs.c
|
||||
+++ src/outputs.c
|
||||
@@ -534,20 +534,20 @@ static void registry_handle_global(void *data, struct wl_registry *registry,
|
||||
|
||||
if (strcmp(interface, zwlr_output_manager_v1_interface.name) == 0) {
|
||||
state->output_manager = wl_registry_bind(registry, name,
|
||||
- &zwlr_output_manager_v1_interface, version);
|
||||
+ &zwlr_output_manager_v1_interface, 1);
|
||||
zwlr_output_manager_v1_add_listener(state->output_manager,
|
||||
&output_manager_listener, state);
|
||||
} else if (strcmp(interface, zxdg_output_manager_v1_interface.name) == 0) {
|
||||
state->xdg_output_manager = wl_registry_bind(registry, name,
|
||||
- &zxdg_output_manager_v1_interface, version);
|
||||
+ &zxdg_output_manager_v1_interface, 3);
|
||||
} else if(strcmp(interface, zwlr_screencopy_manager_v1_interface.name) == 0) {
|
||||
state->copy_manager = wl_registry_bind(registry, name,
|
||||
- &zwlr_screencopy_manager_v1_interface, version);
|
||||
+ &zwlr_screencopy_manager_v1_interface, 1);
|
||||
} else if(strcmp(interface, zwlr_layer_shell_v1_interface.name) == 0) {
|
||||
state->layer_shell = wl_registry_bind(registry, name,
|
||||
- &zwlr_layer_shell_v1_interface, version);
|
||||
+ &zwlr_layer_shell_v1_interface, 1);
|
||||
} else if(strcmp(interface, wl_shm_interface.name) == 0) {
|
||||
- state->shm = wl_registry_bind(registry, name, &wl_shm_interface, version);
|
||||
+ state->shm = wl_registry_bind(registry, name, &wl_shm_interface, 1);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'wdisplays'
|
||||
pkgname=wdisplays
|
||||
version=1.0
|
||||
revision=1
|
||||
revision=2
|
||||
build_style=meson
|
||||
hostmakedepends="pkg-config wayland-devel glib-devel python3-scour"
|
||||
makedepends="wayland-devel libepoxy-devel gtk+3-devel"
|
||||
|
|
Loading…
Reference in a new issue