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"/>