Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package at-spi2-core for openSUSE:Factory 
checked in at 2025-08-06 14:32:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/at-spi2-core (Old)
 and      /work/SRC/openSUSE:Factory/.at-spi2-core.new.1085 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "at-spi2-core"

Wed Aug  6 14:32:30 2025 rev:117 rq:1297631 version:2.56.4

Changes:
--------
--- /work/SRC/openSUSE:Factory/at-spi2-core/at-spi2-core.changes        
2025-07-15 17:07:11.222451047 +0200
+++ /work/SRC/openSUSE:Factory/.at-spi2-core.new.1085/at-spi2-core.changes      
2025-08-06 14:33:22.868258172 +0200
@@ -1,0 +2,13 @@
+Sat Aug  2 12:13:28 UTC 2025 - Bjørn Lie <bjorn....@gmail.com>
+
+- Update to version 2.56.4:
+  + Fix key grabs when num lock or caps lock are on under Wayland.
+  + atk-bridge: Don't crash when requesting a plug if not
+    activated.
+  + Add sanity checks for child indices received via DBus.
+- Drop patches fixed upstream:
+  + at-spi2-core-grab-memory-leak.patch
+  + at-spi2-core-key-grabs.patch
+  + at-spi2-core-plug-crash.patch
+
+-------------------------------------------------------------------

Old:
----
  at-spi2-core-2.56.3.obscpio
  at-spi2-core-grab-memory-leak.patch
  at-spi2-core-key-grabs.patch
  at-spi2-core-plug-crash.patch

New:
----
  at-spi2-core-2.56.4.obscpio

----------(Old B)----------
  Old:- Drop patches fixed upstream:
  + at-spi2-core-grab-memory-leak.patch
  + at-spi2-core-key-grabs.patch
  Old:  + at-spi2-core-grab-memory-leak.patch
  + at-spi2-core-key-grabs.patch
  + at-spi2-core-plug-crash.patch
  Old:  + at-spi2-core-key-grabs.patch
  + at-spi2-core-plug-crash.patch
----------(Old E)----------

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

Other differences:
------------------
++++++ at-spi2-core.spec ++++++
--- /var/tmp/diff_new_pack.WFUXub/_old  2025-08-06 14:33:24.188313436 +0200
+++ /var/tmp/diff_new_pack.WFUXub/_new  2025-08-06 14:33:24.188313436 +0200
@@ -23,7 +23,7 @@
 %define atspiconfdir %{?_distconfdir}%{!?_distconfdir:%{_sysconfdir}}
 
 Name:           at-spi2-core
-Version:        2.56.3
+Version:        2.56.4
 Release:        0
 Summary:        Assistive Technology Service Provider Interface - D-Bus based 
implementation
 License:        LGPL-2.1-or-later
@@ -31,12 +31,7 @@
 URL:            https://www.gnome.org/
 Source0:        %{name}-%{version}.tar.zst
 Source99:       baselibs.conf
-# PATCH-FIX-UPSTREAM at-spi2-core-grab-memory-leak.patch mgo...@suse.com -- 
fix a memory leak when removing a key grab.
-Patch0:         at-spi2-core-grab-memory-leak.patch
-# PATCH-FIX-UPSTREAM at-spi2-core-key-grabs.patch mgo...@suse.com -- also send 
grab variants with numlock and caps lock enabled.
-Patch1:         at-spi2-core-key-grabs.patch
-# PATCH-FIX-UPSTREAM at-spi2-core-plug-crash.patch mgo...@suse.com -- don't 
crash when requesting a plug if not activated.
-Patch2:         at-spi2-core-plug-crash.patch
+
 BuildRequires:  fdupes
 BuildRequires:  meson >= 0.63.0
 BuildRequires:  pkgconfig

++++++ _service ++++++
--- /var/tmp/diff_new_pack.WFUXub/_old  2025-08-06 14:33:24.216314608 +0200
+++ /var/tmp/diff_new_pack.WFUXub/_new  2025-08-06 14:33:24.220314776 +0200
@@ -3,7 +3,7 @@
   <service name="obs_scm" mode="manual">
     <param name="scm">git</param>
     <param name="url">https://gitlab.gnome.org/GNOME/at-spi2-core.git</param>
-    <param name="revision">2.56.3</param>
+    <param name="revision">2.56.4</param>
     <param name="versionformat">@PARENT_TAG@+@TAG_OFFSET@</param>
     <param name="versionrewrite-pattern">(.*)\+0</param>
     <param name="versionrewrite-replacement">\1</param>

++++++ at-spi2-core-2.56.3.obscpio -> at-spi2-core-2.56.4.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/NEWS new/at-spi2-core-2.56.4/NEWS
--- old/at-spi2-core-2.56.3/NEWS        2025-06-28 15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/NEWS        2025-08-02 01:08:01.000000000 +0200
@@ -1,3 +1,11 @@
+What's new in at-spi2-core 2.56.4:
+
+* Fix key grabs when num lock or caps lock are on under Wayland.
+
+    atk-bridge: Don't crash when requesting a plug if not activated
+
+* Add sanity checks for child indices received via DBus.
+
 What's new in at-spi2-core 2.56.3:
 
 * DeviceEventController: update mouse coordinates before sending button events
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/atk-adaptor/bridge.c 
new/at-spi2-core-2.56.4/atk-adaptor/bridge.c
--- old/at-spi2-core-2.56.3/atk-adaptor/bridge.c        2025-06-28 
15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/atk-adaptor/bridge.c        2025-08-02 
01:08:01.000000000 +0200
@@ -514,10 +514,14 @@
 static gchar *
 get_plug_id (AtkPlug *plug)
 {
-  const char *uname = dbus_bus_get_unique_name (spi_global_app_data->bus);
+  const char *uname;
   gchar *path;
   GString *str = g_string_new (NULL);
 
+  if (!spi_global_app_data || !spi_global_app_data->bus)
+    return NULL;
+
+  uname = dbus_bus_get_unique_name (spi_global_app_data->bus);
   path = spi_register_object_to_path (spi_global_register, G_OBJECT (plug));
   g_string_printf (str, "%s:%s", uname, path);
   g_free (path);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/atspi/atspi-accessible.c 
new/at-spi2-core-2.56.4/atspi/atspi-accessible.c
--- old/at-spi2-core-2.56.3/atspi/atspi-accessible.c    2025-06-28 
15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/atspi/atspi-accessible.c    2025-08-02 
01:08:01.000000000 +0200
@@ -494,6 +494,7 @@
   DBusMessage *reply;
 
   g_return_val_if_fail (obj != NULL, NULL);
+  g_return_val_if_fail (child_index >= 0, NULL);
 
   if (_atspi_accessible_test_cache (obj, ATSPI_CACHE_CHILDREN))
     {
@@ -515,7 +516,7 @@
   if (!child)
     return NULL;
 
-  if (_atspi_accessible_test_cache (obj, ATSPI_CACHE_CHILDREN))
+  if (_atspi_accessible_test_cache (obj, ATSPI_CACHE_CHILDREN) && child_index 
< 65536)
     {
       if (child_index >= obj->children->len)
         g_ptr_array_set_size (obj->children, child_index + 1);
@@ -884,15 +885,21 @@
 atspi_accessible_get_toolkit_name (AtspiAccessible *obj, GError **error)
 {
   g_return_val_if_fail (obj != NULL, NULL);
+  gchar *toolkit_name = NULL;
 
   if (!obj->parent.app)
     return NULL;
 
-  if (!obj->parent.app->toolkit_name)
-    _atspi_dbus_get_property (obj, atspi_interface_application, "ToolkitName",
-                              error, "s", &obj->parent.app->toolkit_name);
+  if (obj->parent.app->toolkit_name)
+    return g_strdup (obj->parent.app->toolkit_name);
+
+  _atspi_dbus_get_property (obj, atspi_interface_application, "ToolkitName",
+                            error, "s", &toolkit_name);
 
-  return g_strdup (obj->parent.app->toolkit_name);
+  if (obj->parent.app)
+    obj->parent.app->toolkit_name = g_strdup (toolkit_name);
+
+  return toolkit_name;
 }
 
 /**
@@ -908,15 +915,21 @@
 atspi_accessible_get_toolkit_version (AtspiAccessible *obj, GError **error)
 {
   g_return_val_if_fail (obj != NULL, NULL);
+  gchar *toolkit_version = NULL;
 
   if (!obj->parent.app)
     return NULL;
 
-  if (!obj->parent.app->toolkit_version)
-    _atspi_dbus_get_property (obj, atspi_interface_application, "Version",
-                              error, "s", &obj->parent.app->toolkit_version);
+  if (obj->parent.app->toolkit_version)
+    return g_strdup (obj->parent.app->toolkit_version);
+
+  _atspi_dbus_get_property (obj, atspi_interface_application, "Version",
+                            error, "s", &toolkit_version);
 
-  return g_strdup (obj->parent.app->toolkit_version);
+  if (obj->parent.app)
+    obj->parent.app->toolkit_version = g_strdup (toolkit_version);
+
+  return toolkit_version;
 }
 
 /**
@@ -933,15 +946,21 @@
 atspi_accessible_get_atspi_version (AtspiAccessible *obj, GError **error)
 {
   g_return_val_if_fail (obj != NULL, NULL);
+  gchar *atspi_version = NULL;
 
   if (!obj->parent.app)
     return NULL;
 
-  if (!obj->parent.app->atspi_version)
-    _atspi_dbus_get_property (obj, atspi_interface_application, "AtspiVersion",
-                              error, "s", &obj->parent.app->atspi_version);
+  if (obj->parent.app->atspi_version)
+    return g_strdup (obj->parent.app->atspi_version);
+
+  _atspi_dbus_get_property (obj, atspi_interface_application, "AtspiVersion",
+                            error, "s", &atspi_version);
+
+  if (obj->parent.app)
+    obj->parent.app->atspi_version = g_strdup (atspi_version);
 
-  return g_strdup (obj->parent.app->atspi_version);
+  return atspi_version;
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/at-spi2-core-2.56.3/atspi/atspi-device-a11y-manager.c 
new/at-spi2-core-2.56.4/atspi/atspi-device-a11y-manager.c
--- old/at-spi2-core-2.56.3/atspi/atspi-device-a11y-manager.c   2025-06-28 
15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/atspi/atspi-device-a11y-manager.c   2025-08-02 
01:08:01.000000000 +0200
@@ -111,6 +111,18 @@
   return NULL;
 }
 
+#define MODIFIER_NUMLOCK (1 << ATSPI_MODIFIER_META)
+#define MODIFIER_CAPSLOCK (1 << ATSPI_MODIFIER_SHIFTLOCK)
+
+static void
+add_grab_to_builder (GVariantBuilder *builder, guint32 keysym, guint32 
modifiers)
+{
+  g_variant_builder_open (builder, G_VARIANT_TYPE ("(uu)"));
+  g_variant_builder_add (builder, "u", keysym);
+  g_variant_builder_add (builder, "u", modifiers);
+  g_variant_builder_close (builder);
+}
+
 static void
 refresh_grabs (AtspiDeviceA11yManager *manager_device)
 {
@@ -129,10 +141,10 @@
   for (l = manager_device->grabbed_keys; l; l = l->next)
     {
       AtspiDeviceA11yManagerKey *entry = l->data;
-      g_variant_builder_open (&builder, G_VARIANT_TYPE ("(uu)"));
-      g_variant_builder_add (&builder, "u", entry->keysym);
-      g_variant_builder_add (&builder, "u", entry->modifiers);
-      g_variant_builder_close (&builder);
+      add_grab_to_builder (&builder, entry->keysym, entry->modifiers);
+      add_grab_to_builder (&builder, entry->keysym, entry->modifiers | 
MODIFIER_NUMLOCK);
+      add_grab_to_builder (&builder, entry->keysym, entry->modifiers | 
MODIFIER_CAPSLOCK);
+      add_grab_to_builder (&builder, entry->keysym, entry->modifiers | 
MODIFIER_CAPSLOCK | MODIFIER_NUMLOCK);
     }
   g_variant_builder_close (&builder);
   g_dbus_proxy_call_sync (manager_device->keyboard_monitor,
@@ -316,9 +328,11 @@
           manager_device->grabbed_keys = g_slist_remove 
(manager_device->grabbed_keys, entry);
           g_free (entry);
           schedule_refresh_grabs (manager_device);
-          return;
+          break;
         }
     }
+
+  g_free (kd);
 }
 
 static void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/atspi/atspi-device-x11.c 
new/at-spi2-core-2.56.4/atspi/atspi-device-x11.c
--- old/at-spi2-core-2.56.3/atspi/atspi-device-x11.c    2025-06-28 
15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/atspi/atspi-device-x11.c    2025-08-02 
01:08:01.000000000 +0200
@@ -709,9 +709,11 @@
         {
           disable_key_grab (x11_device, other);
           priv->key_grabs = g_slist_remove (priv->key_grabs, other);
-          return;
+          break;
         }
     }
+
+  g_free (kd);
 }
 
 static guint
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/atspi/atspi-misc.c 
new/at-spi2-core-2.56.4/atspi/atspi-misc.c
--- old/at-spi2-core-2.56.3/atspi/atspi-misc.c  2025-06-28 15:44:36.000000000 
+0200
+++ new/at-spi2-core-2.56.4/atspi/atspi-misc.c  2025-08-02 01:08:01.000000000 
+0200
@@ -617,7 +617,7 @@
     {
       /* Get index in parent */
       dbus_message_iter_get_basic (&iter_struct, &index);
-      if (index >= 0 && accessible->accessible_parent)
+      if (index >= 0 && index < 65536 && accessible->accessible_parent)
         {
           AtspiAccessible *old_child = NULL;
           if (index >= accessible->accessible_parent->children->len)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.56.3/meson.build 
new/at-spi2-core-2.56.4/meson.build
--- old/at-spi2-core-2.56.3/meson.build 2025-06-28 15:44:36.000000000 +0200
+++ new/at-spi2-core-2.56.4/meson.build 2025-08-02 01:08:01.000000000 +0200
@@ -1,5 +1,5 @@
 project('at-spi2-core', 'c',
-        version: '2.56.3',
+        version: '2.56.4',
         license: 'LGPLv2.1+',
         default_options: [
           'buildtype=debugoptimized',

++++++ at-spi2-core.obsinfo ++++++
--- /var/tmp/diff_new_pack.WFUXub/_old  2025-08-06 14:33:24.540328173 +0200
+++ /var/tmp/diff_new_pack.WFUXub/_new  2025-08-06 14:33:24.544328340 +0200
@@ -1,5 +1,5 @@
 name: at-spi2-core
-version: 2.56.3
-mtime: 1751118276
-commit: 1c6197ff508a1973462f69f1a77e85de9067e10a
+version: 2.56.4
+mtime: 1754089681
+commit: 7f111fc91751b49bd7fec885035024b401253adb
 

Reply via email to