[gnome-shell/fix-st-password-crash] st-password-entry: Fix crash when DConf changes after StEntry is destroyed
- From: Ray Strode <halfline src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/fix-st-password-crash] st-password-entry: Fix crash when DConf changes after StEntry is destroyed
- Date: Tue, 12 Oct 2021 19:23:25 +0000 (UTC)
commit de6604e4c7ddfcfd5fc089c462ecd29316b44189
Author: Ray Strode <rstrode redhat com>
Date: Tue Oct 12 15:15:50 2021 -0400
st-password-entry: Fix crash when DConf changes after StEntry is destroyed
commit 8721c5db37c1409dbb806c915e6c077e1c4b8c6b made StPasswordEntry
honor the 'disable-show-password' setting.
Unfortunately, it introduced a lifecycle bug where the signal handler
for noticing setting changes can out live the entry itself.
This commit fixes the problem by using g_signal_connect_object
src/st/st-password-entry.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
---
diff --git a/src/st/st-password-entry.c b/src/st/st-password-entry.c
index 3dd8c6c1cf..d17eeefa46 100644
--- a/src/st/st-password-entry.c
+++ b/src/st/st-password-entry.c
@@ -229,10 +229,11 @@ st_password_entry_init (StPasswordEntry *entry)
st_password_entry_set_show_peek_icon (entry, TRUE);
- g_signal_connect (st_settings_get (),
- "notify::disable-show-password",
- G_CALLBACK (on_disable_show_password_changed),
- entry);
+ g_signal_connect_object (st_settings_get (),
+ "notify::disable-show-password",
+ G_CALLBACK (on_disable_show_password_changed),
+ entry,
+ 0);
clutter_text = st_entry_get_clutter_text (ST_ENTRY (entry));
clutter_text_set_password_char (CLUTTER_TEXT (clutter_text), BLACK_CIRCLE);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]