From 7b22983be58b7f96afa85399f0f7b86b0a4b8e09 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 22 Mar 2023 23:41:40 -0400 Subject: [PATCH] Don't leak all AT contexts create_at_context was confused - it stored a reference to the newly created context in priv->context, but then also returned a reference, and the caller stored that in priv->context again. Change it to only return a reference. Fixes: #5690 --- gtk/gtkwidget.c | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c index eaf7f04d11..9e5aae0ac2 100644 --- a/gtk/gtkwidget.c +++ b/gtk/gtkwidget.c @@ -8501,11 +8501,7 @@ create_at_context (GtkWidget *self) role = class_priv->accessible_role; priv->accessible_role = role; - priv->at_context = gtk_at_context_create (role, GTK_ACCESSIBLE (self), gdk_display_get_default ()); - if (priv->at_context != NULL) - return g_object_ref (priv->at_context); - - return NULL; + return gtk_at_context_create (role, GTK_ACCESSIBLE (self), gdk_display_get_default ()); } static GtkATContext * -- 2.30.2