diff --git a/at-spi2-atk.spec b/at-spi2-atk.spec index 7342bd4555282231ab8e7c8bb6f305c258e8bf96..ca722d87fd1c68b862c6bcf97e83a16fd9e3e46e 100644 --- a/at-spi2-atk.spec +++ b/at-spi2-atk.spec @@ -1,12 +1,15 @@ Name: at-spi2-atk Version: 2.38.0 -Release: 1 +Release: 2 Summary: GTK+ module for the Assistive Technology Service License: LGPLv2+ URL: https://www.freedesktop.org/wiki/Accessibility/AT-SPI2/ Source0: https://github.com/GNOME/at-spi2-atk/archive/AT_SPI2_ATK_2_38_0.tar.gz +Patch6000: backport-fix-test-memory-leak.patch +Patch6001: backport-also-fix-ref-leak-in-try_get_root.patch + BuildRequires: gtk2-devel dbus-devel dbus-glib-devel gcc BuildRequires: libxml2-devel gettext glib2-devel meson BuildRequires: atk-devel >= 2.29.2 @@ -59,6 +62,9 @@ Requires: %{name} = %{version}-%{release} %doc README %changelog +* Sat Oct 22 2022 wangkerong - 2.38.0-2 +- fix memory leak in test + * Tue Jan 28 2020 yanglu - 2.38.0-1 - Version update diff --git a/backport-also-fix-ref-leak-in-try_get_root.patch b/backport-also-fix-ref-leak-in-try_get_root.patch new file mode 100644 index 0000000000000000000000000000000000000000..08ba406edcf83f349f5e9d74f4cf8850626f84e9 --- /dev/null +++ b/backport-also-fix-ref-leak-in-try_get_root.patch @@ -0,0 +1,33 @@ +From 65b22d16e5b81544672c8acf01f0a0388e1192a5 Mon Sep 17 00:00:00 2001 +From: Mike Gorse +Date: Wed, 16 Dec 2020 08:52:30 -0600 +Subject: [PATCH] tests: also fix ref leak in try_get_root() + +--- + tests/atk_test_util.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/tests/atk_test_util.c b/tests/atk_test_util.c +index 23735230..366725c4 100644 +--- a/tests/atk_test_util.c ++++ b/tests/atk_test_util.c +@@ -62,13 +62,16 @@ static AtspiAccessible *try_get_root_obj (AtspiAccessible *obj) + + for (i = 0; i < child_count; i++) { + AtspiAccessible *child = atspi_accessible_get_child_at_index (obj, i, NULL); +- if (child && name = atspi_accessible_get_name (child, NULL)) { ++ if (!child) ++ continue; ++ if ((name = atspi_accessible_get_name (child, NULL)) != NULL) { + if (!strcmp (name, "root_object")) { + g_free(name); + return child; + } + g_free(name); + } ++ g_object_unref (child); + } + + return NULL; +-- +GitLab diff --git a/backport-fix-test-memory-leak.patch b/backport-fix-test-memory-leak.patch new file mode 100644 index 0000000000000000000000000000000000000000..04a0eb8df754159bb7a18505a370948aef51aeb7 --- /dev/null +++ b/backport-fix-test-memory-leak.patch @@ -0,0 +1,44 @@ +From 87c898bcbde8452a349b0d472b850a0d7277c446 Mon Sep 17 00:00:00 2001 +From: Shinwoo Kim +Date: Tue, 15 Dec 2020 11:50:49 +0900 +Subject: [PATCH] tests: fix memory leak + +The return value of atspi_accessible_get_name should be released after using it. +--- + tests/atk_test_util.c | 14 ++++++++++---- + 1 file changed, 10 insertions(+), 4 deletions(-) + +diff --git a/tests/atk_test_util.c b/tests/atk_test_util.c +index 3e3c08a2..23735230 100644 +--- a/tests/atk_test_util.c ++++ b/tests/atk_test_util.c +@@ -52,6 +52,7 @@ run_app (const char *file_name) + + static AtspiAccessible *try_get_root_obj (AtspiAccessible *obj) + { ++ gchar *name; + int i; + + gint child_count = atspi_accessible_get_child_count (obj, NULL); +@@ -59,10 +60,15 @@ static AtspiAccessible *try_get_root_obj (AtspiAccessible *obj) + return NULL; + } + +- for (i=0; i