Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package sway for openSUSE:Factory checked in 
at 2022-12-02 13:13:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sway (Old)
 and      /work/SRC/openSUSE:Factory/.sway.new.1835 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sway"

Fri Dec  2 13:13:15 2022 rev:34 rq:1039280 version:1.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/sway/sway.changes        2022-05-23 
15:51:57.278658199 +0200
+++ /work/SRC/openSUSE:Factory/.sway.new.1835/sway.changes      2022-12-02 
13:13:31.717981002 +0100
@@ -1,0 +2,11 @@
+Thu Dec  1 08:31:10 UTC 2022 - Andreas Stieger <andreas.stie...@gmx.de>
+
+- Fix build: pick up a compatible verison of wlroots boo#1205766
+
+-------------------------------------------------------------------
+Sat Nov 26 05:51:30 UTC 2022 - Andreas Stieger <andreas.stie...@gmx.de>
+
+- Update upstream signing key and verify source signature
+- https://github.com/swaywm/sway/pull/6484 6484.patch refreshed
+
+-------------------------------------------------------------------

New:
----
  sway-1.7.tar.gz.sig

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ sway.spec ++++++
--- /var/tmp/diff_new_pack.fkt7WE/_old  2022-12-02 13:13:32.457985071 +0100
+++ /var/tmp/diff_new_pack.fkt7WE/_new  2022-12-02 13:13:32.461985093 +0100
@@ -23,8 +23,9 @@
 License:        MIT
 Group:          System/GUI/Other
 URL:            https://github.com/swaywm/sway
-Source0:        
https://github.com/swaywm/sway/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
-Source2:        sway.keyring
+Source0:        
https://github.com/swaywm/sway/releases/download/%{version}/%{name}-%{version}.tar.gz
+Source1:        
https://github.com/swaywm/sway/releases/download/%{version}/%{name}-%{version}.tar.gz.sig
+Source2:        
https://emersion.fr/.well-known/openpgpkey/hu/dj3498u4hyyarh35rkjfnghbjxug6b19#/%{name}.keyring
 Patch0:         https://github.com/swaywm/sway/pull/6484.patch
 # Will be in next release
 Patch1:         fix-upstream-gcc12-build-issue.patch
@@ -52,6 +53,7 @@
 BuildRequires:  pkgconfig(wayland-protocols) >= 1.24
 BuildRequires:  pkgconfig(wayland-server) >= 1.20.0
 BuildRequires:  pkgconfig(wlroots) >= 0.15.0
+BuildConflicts: pkgconfig(wlroots) >= 0.16.0
 BuildRequires:  pkgconfig(xkbcommon)
 Requires:       %{name}-branding
 %if 0%{?suse_version}

++++++ 6484.patch ++++++
--- /var/tmp/diff_new_pack.fkt7WE/_old  2022-12-02 13:13:32.493985269 +0100
+++ /var/tmp/diff_new_pack.fkt7WE/_new  2022-12-02 13:13:32.497985291 +0100
@@ -1,64 +1,97 @@
-From 4fb73877a34616ad9849b050275ad6a62354a9e6 Mon Sep 17 00:00:00 2001
+From 5f83fe64abb1763592cb42a32e176667f20264dd Mon Sep 17 00:00:00 2001
 From: =?UTF-8?q?Yaroslav=20de=20la=20Pe=C3=B1a=20Smirnov?=
  <y...@yaroslavps.com>
-Date: Sun, 5 Sep 2021 00:51:26 +0300
-Subject: [PATCH] Prevent segfault on keyboard connection
+Date: Sun, 23 Oct 2022 03:09:38 +0300
+Subject: [PATCH] Fix keymap being NULL and segfaulting on dev add
 
-Check if keymap is a valid (non-null) pointer in
-ipc_json_describe_input.
+Moved `libinput_config` to the callers of
+`sway_input_configure_libinput_device` so that we send the event after
+the added event.
 ---
- sway/ipc-json.c | 39 +++++++++++++++++++++------------------
- 1 file changed, 21 insertions(+), 18 deletions(-)
+ include/sway/input/libinput.h |  2 +-
+ sway/input/input-manager.c    | 11 +++++++++--
+ sway/input/libinput.c         |  8 +++-----
+ 3 files changed, 13 insertions(+), 8 deletions(-)
 
-diff --git a/sway/ipc-json.c b/sway/ipc-json.c
-index 1b64f86e1f..1d47f12c2a 100644
---- a/sway/ipc-json.c
-+++ b/sway/ipc-json.c
-@@ -979,25 +979,28 @@ json_object *ipc_json_describe_input(struct 
sway_input_device *device) {
-       if (device->wlr_device->type == WLR_INPUT_DEVICE_KEYBOARD) {
-               struct wlr_keyboard *keyboard = device->wlr_device->keyboard;
-               struct xkb_keymap *keymap = keyboard->keymap;
--              struct xkb_state *state = keyboard->xkb_state;
--
--              json_object *layouts_arr = json_object_new_array();
--              json_object_object_add(object, "xkb_layout_names", layouts_arr);
--
--              xkb_layout_index_t num_layouts = xkb_keymap_num_layouts(keymap);
--              xkb_layout_index_t layout_idx;
--              for (layout_idx = 0; layout_idx < num_layouts; layout_idx++) {
--                      const char *layout = xkb_keymap_layout_get_name(keymap, 
layout_idx);
--                      json_object_array_add(layouts_arr,
--                              layout ? json_object_new_string(layout) : NULL);
--
--                      bool is_active = xkb_state_layout_index_is_active(state,
--                              layout_idx, XKB_STATE_LAYOUT_EFFECTIVE);
--                      if (is_active) {
--                              json_object_object_add(object, 
"xkb_active_layout_index",
--                                      json_object_new_int(layout_idx));
--                              json_object_object_add(object, 
"xkb_active_layout_name",
-+
-+              if (keymap != NULL) {
-+                      struct xkb_state *state = keyboard->xkb_state;
-+
-+                      json_object *layouts_arr = json_object_new_array();
-+                      json_object_object_add(object, "xkb_layout_names", 
layouts_arr);
-+
-+                      xkb_layout_index_t num_layouts = 
xkb_keymap_num_layouts(keymap);
-+                      xkb_layout_index_t layout_idx;
-+                      for (layout_idx = 0; layout_idx < num_layouts; 
layout_idx++) {
-+                              const char *layout = 
xkb_keymap_layout_get_name(keymap, layout_idx);
-+                              json_object_array_add(layouts_arr,
-                                       layout ? json_object_new_string(layout) 
: NULL);
+diff --git a/include/sway/input/libinput.h b/include/sway/input/libinput.h
+index 890d632ee2..e4b1acc374 100644
+--- a/include/sway/input/libinput.h
++++ b/include/sway/input/libinput.h
+@@ -2,7 +2,7 @@
+ #define _SWAY_INPUT_LIBINPUT_H
+ #include "sway/input/input-manager.h"
+ 
+-void sway_input_configure_libinput_device(struct sway_input_device *device);
++bool sway_input_configure_libinput_device(struct sway_input_device *device);
+ 
+ void sway_input_reset_libinput_device(struct sway_input_device *device);
+ 
+diff --git a/sway/input/input-manager.c b/sway/input/input-manager.c
+index 4a0bce0e2b..26eefc8a12 100644
+--- a/sway/input/input-manager.c
++++ b/sway/input/input-manager.c
+@@ -236,7 +236,7 @@ static void handle_new_input(struct wl_listener *listener, 
void *data) {
+ 
+       apply_input_type_config(input_device);
+ 
+-      sway_input_configure_libinput_device(input_device);
++      bool config_changed = 
sway_input_configure_libinput_device(input_device);
+ 
+       wl_signal_add(&device->events.destroy, &input_device->device_destroy);
+       input_device->device_destroy.notify = handle_device_destroy;
+@@ -274,6 +274,10 @@ static void handle_new_input(struct wl_listener 
*listener, void *data) {
+       }
+ 
+       ipc_event_input("added", input_device);
 +
-+                              bool is_active = 
xkb_state_layout_index_is_active(state,
-+                                      layout_idx, XKB_STATE_LAYOUT_EFFECTIVE);
-+                              if (is_active) {
-+                                      json_object_object_add(object, 
"xkb_active_layout_index",
-+                                              
json_object_new_int(layout_idx));
-+                                      json_object_object_add(object, 
"xkb_active_layout_name",
-+                                              layout ? 
json_object_new_string(layout) : NULL);
-+                              }
-                       }
-               }
++      if (config_changed) {
++              ipc_event_input("libinput_config", input_device);
++      }
+ }
+ 
+ static void handle_inhibit_activate(struct wl_listener *listener, void *data) 
{
+@@ -528,11 +532,14 @@ static void retranslate_keysyms(struct input_config 
*input_config) {
+ 
+ static void input_manager_configure_input(
+               struct sway_input_device *input_device) {
+-      sway_input_configure_libinput_device(input_device);
++      bool config_changed = 
sway_input_configure_libinput_device(input_device);
+       struct sway_seat *seat = NULL;
+       wl_list_for_each(seat, &server.input->seats, link) {
+               seat_configure_device(seat, input_device);
+       }
++      if (config_changed) {
++              ipc_event_input("libinput_config", input_device);
++      }
+ }
+ 
+ void input_manager_configure_all_inputs(void) {
+diff --git a/sway/input/libinput.c b/sway/input/libinput.c
+index 3c0f359d89..1bac72c900 100644
+--- a/sway/input/libinput.c
++++ b/sway/input/libinput.c
+@@ -187,10 +187,10 @@ static bool set_calibration_matrix(struct 
libinput_device *dev, float mat[6]) {
+       return changed;
+ }
+ 
+-void sway_input_configure_libinput_device(struct sway_input_device 
*input_device) {
++bool sway_input_configure_libinput_device(struct sway_input_device 
*input_device) {
+       struct input_config *ic = input_device_get_config(input_device);
+       if (!ic || !wlr_input_device_is_libinput(input_device->wlr_device)) {
+-              return;
++              return false;
+       }
+ 
+       struct libinput_device *device =
+@@ -259,9 +259,7 @@ void sway_input_configure_libinput_device(struct 
sway_input_device *input_device
+               changed |= set_calibration_matrix(device, 
ic->calibration_matrix.matrix);
        }
+ 
+-      if (changed) {
+-              ipc_event_input("libinput_config", input_device);
+-      }
++      return changed;
+ }
+ 
+ void sway_input_reset_libinput_device(struct sway_input_device *input_device) 
{
 

++++++ sway.keyring ++++++
Binary files /var/tmp/diff_new_pack.fkt7WE/_old and 
/var/tmp/diff_new_pack.fkt7WE/_new differ

Reply via email to