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 2023-05-12 20:32:36
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/at-spi2-core (Old)
 and      /work/SRC/openSUSE:Factory/.at-spi2-core.new.1533 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "at-spi2-core"

Fri May 12 20:32:36 2023 rev:102 rq:1086599 version:2.48.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/at-spi2-core/at-spi2-core.changes        
2023-05-10 16:17:01.990445402 +0200
+++ /work/SRC/openSUSE:Factory/.at-spi2-core.new.1533/at-spi2-core.changes      
2023-05-12 20:32:47.412604381 +0200
@@ -1,0 +2,20 @@
+Thu May 11 17:32:53 UTC 2023 - Michael Gorse <mgo...@suse.com>
+
+- Update to version 2.48.2:
+  + Fixed a regression in 2.48.1 where the bus launcher would fail
+    if dbus-broker was configured at build time but not installed
+    on the system.
+
+-------------------------------------------------------------------
+Thu May 11 09:03:52 UTC 2023 - Bjørn Lie <bjorn....@gmail.com>
+
+- Update to version 2.48.1:
+  + Fixes for atk-only builds under Windows.
+  + meson: Avoid requiring libsystemd when configured to use
+    dbus-daemon.
+  + Fix crash when a bad index is passed to
+    atspi_accessible_get_child_at_index.
+  + Fix possible infinite recursion in
+    atspi_accessible_clear_cache.
+
+-------------------------------------------------------------------

Old:
----
  at-spi2-core-2.48.0.tar.xz

New:
----
  at-spi2-core-2.48.2.tar.xz

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

Other differences:
------------------
++++++ at-spi2-core.spec ++++++
--- /var/tmp/diff_new_pack.ZNEyyk/_old  2023-05-12 20:32:47.988607687 +0200
+++ /var/tmp/diff_new_pack.ZNEyyk/_new  2023-05-12 20:32:48.000607756 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           at-spi2-core
-Version:        2.48.0
+Version:        2.48.2
 Release:        0
 Summary:        Assistive Technology Service Provider Interface - D-Bus based 
implementation
 License:        LGPL-2.1-or-later

++++++ at-spi2-core-2.48.0.tar.xz -> at-spi2-core-2.48.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/NEWS new/at-spi2-core-2.48.2/NEWS
--- old/at-spi2-core-2.48.0/NEWS        2023-03-19 15:23:15.000000000 +0100
+++ new/at-spi2-core-2.48.2/NEWS        2023-05-11 19:23:22.000000000 +0200
@@ -1,3 +1,18 @@
+What's new in at-spi2-core 2.48.2:
+
+* Fixed a regression in 2.48.1 where the bus launcher would fail if
+  dbus-broker was configured at build time but not installed on the system.
+
+What's new in at-spi2-core 2.48.1:
+
+* Fixes for atk-only builds under Windows.
+
+* meson: Avoid requiring libsystemd when configured to use dbus-daemon
+
+* Fix crash when a bad index is passed to atspi_accessible_get_child_at_index.
+
+* Fix possible infinite recursion in atspi_accessible_clear_cache.
+
 What's new in at-spi2-core 2.48.0:
 
 * Add a "atk-only" build option. This allows atk to be built without libdbus
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/atspi/atspi-accessible-private.h 
new/at-spi2-core-2.48.2/atspi/atspi-accessible-private.h
--- old/at-spi2-core-2.48.0/atspi/atspi-accessible-private.h    2023-03-19 
15:23:15.000000000 +0100
+++ new/at-spi2-core-2.48.2/atspi/atspi-accessible-private.h    2023-05-11 
19:23:22.000000000 +0200
@@ -37,6 +37,7 @@
 {
   GHashTable *cache;
   guint cache_ref_count;
+  guint iteration_stamp;
 };
 
 GHashTable *
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/atspi/atspi-accessible.c 
new/at-spi2-core-2.48.2/atspi/atspi-accessible.c
--- old/at-spi2-core-2.48.0/atspi/atspi-accessible.c    2023-03-19 
15:23:15.000000000 +0100
+++ new/at-spi2-core-2.48.2/atspi/atspi-accessible.c    2023-05-11 
19:23:22.000000000 +0200
@@ -490,9 +490,12 @@
       if (!obj->children)
         return NULL; /* assume disposed */
 
-      child = g_ptr_array_index (obj->children, child_index);
-      if (child)
-        return g_object_ref (child);
+      if (child_index < obj->children->len)
+        {
+          child = g_ptr_array_index (obj->children, child_index);
+          if (child)
+            return g_object_ref (child);
+        }
     }
 
   reply = _atspi_dbus_call_partial (obj, atspi_interface_accessible,
@@ -1731,6 +1734,21 @@
   enable_caching = TRUE;
 }
 
+static void
+atspi_accessible_clear_cache_internal (AtspiAccessible *obj, guint 
iteration_stamp)
+{
+  gint i;
+
+  if (obj && obj->priv->iteration_stamp != iteration_stamp)
+    {
+      obj->priv->iteration_stamp = iteration_stamp;
+      obj->cached_properties = ATSPI_CACHE_NONE;
+      if (obj->children)
+        for (i = 0; i < obj->children->len; i++)
+          atspi_accessible_clear_cache_internal (g_ptr_array_index 
(obj->children, i), iteration_stamp);
+    }
+}
+
 /**
  * atspi_accessible_clear_cache:
  * @obj: The #AtspiAccessible whose cache to clear.
@@ -1741,15 +1759,9 @@
 void
 atspi_accessible_clear_cache (AtspiAccessible *obj)
 {
-  gint i;
+  static guint iteration_stamp = 0;
 
-  if (obj)
-    {
-      obj->cached_properties = ATSPI_CACHE_NONE;
-      if (obj->children)
-        for (i = 0; i < obj->children->len; i++)
-          atspi_accessible_clear_cache (g_ptr_array_index (obj->children, i));
-    }
+  atspi_accessible_clear_cache_internal (obj, ++iteration_stamp);
 }
 
 /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/atspi/atspi-misc.c 
new/at-spi2-core-2.48.2/atspi/atspi-misc.c
--- old/at-spi2-core-2.48.0/atspi/atspi-misc.c  2023-03-19 15:23:15.000000000 
+0100
+++ new/at-spi2-core-2.48.2/atspi/atspi-misc.c  2023-05-11 19:23:22.000000000 
+0200
@@ -459,7 +459,14 @@
   parent = _atspi_dbus_consume_accessible (&iter_struct);
   if (accessible->accessible_parent)
     g_object_unref (accessible->accessible_parent);
-  accessible->accessible_parent = parent;
+  if (parent == accessible)
+    {
+      guint pid = atspi_accessible_get_process_id (accessible, NULL);
+      g_warning ("Process %d sent an accessible with itself as its parent. 
This shouldn't happen.", pid);
+      accessible->accessible_parent = NULL;
+    }
+  else
+    accessible->accessible_parent = parent;
 
   if (dbus_message_iter_get_arg_type (&iter_struct) == 'i')
     {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/bus/meson.build 
new/at-spi2-core-2.48.2/bus/meson.build
--- old/at-spi2-core-2.48.0/bus/meson.build     2023-03-19 15:23:15.000000000 
+0100
+++ new/at-spi2-core-2.48.2/bus/meson.build     2023-05-11 19:23:22.000000000 
+0200
@@ -65,13 +65,17 @@
 needs_systemd = false
 if get_option('dbus_broker') != 'default'
   launcher_args += '-DDBUS_BROKER="@0@"'.format(get_option('dbus_broker'))
-  needs_systemd = true
+  if get_option('default_bus') != 'dbus-daemon'
+    needs_systemd = true
+  endif
 else
   dbus_broker = find_program('dbus-broker-launch',
                              required: false)
   if dbus_broker.found()
     launcher_args += '-DDBUS_BROKER="@0@"'.format(dbus_broker.full_path())
-    needs_systemd = true
+    if get_option('default_bus') != 'dbus-daemon'
+      needs_systemd = true
+    endif
   endif
 endif
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/meson.build 
new/at-spi2-core-2.48.2/meson.build
--- old/at-spi2-core-2.48.0/meson.build 2023-03-19 15:23:15.000000000 +0100
+++ new/at-spi2-core-2.48.2/meson.build 2023-05-11 19:23:22.000000000 +0200
@@ -1,5 +1,5 @@
 project('at-spi2-core', 'c',
-        version: '2.48.0',
+        version: '2.48.2',
         license: 'LGPLv2.1+',
         default_options: [
           'buildtype=debugoptimized',
@@ -62,7 +62,7 @@
 # Symbol visibility
 if get_option('default_library') != 'static'
   if host_system == 'windows'
-    atspi_conf.set('DLL_EXPORT', true)
+    at_spi_conf.set('DLL_EXPORT', true)
     at_spi_conf.set('_ATK_EXTERN', '__declspec(dllexport) extern')
     if cc.get_id() != 'msvc'
       test_cflags += ['-fvisibility=hidden']
@@ -134,12 +134,14 @@
 glib_dep = dependency('glib-2.0', version: glib_req_version)
 gobject_dep = dependency('gobject-2.0', version: gobject_req_version)
 gio_dep = dependency('gio-2.0', version: gio_req_version)
-if cc.has_function('dlopen')
-  dl_dep = []
-elif cc.has_function('dlopen', args: '-ldl')
-  dl_dep = cc.find_library('dl')
-else
-  error('Could not find a library with the dlopen function')
+if not get_option('atk_only')
+  if cc.has_function('dlopen')
+    dl_dep = []
+  elif cc.has_function('dlopen', args: '-ldl')
+    dl_dep = cc.find_library('dl')
+  else
+    error('Could not find a library with the dlopen function')
+  endif
 endif
 gmodule_dep = dependency('gmodule-2.0', version: gmodule_req_version)
 libxml_dep = dependency('libxml-2.0', version: libxml_req_version)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/at-spi2-core-2.48.0/xml/Accessible.xml 
new/at-spi2-core-2.48.2/xml/Accessible.xml
--- old/at-spi2-core-2.48.0/xml/Accessible.xml  2023-03-19 15:23:15.000000000 
+0100
+++ new/at-spi2-core-2.48.2/xml/Accessible.xml  2023-05-11 19:23:22.000000000 
+0200
@@ -113,7 +113,8 @@
         GetIndexInParent:
 
         Returns the 0-based index at which the object would be returned by 
calling
-        GetChildren on its parent.
+        GetChildren on its parent, or -1 if the object has no containing
+        parent or on exception.
     -->
     <method name="GetIndexInParent">
       <arg direction="out" type="i"/>

Reply via email to