diff options
author | Will Thompson <wjt@endlessos.org> | 2023-03-30 19:59:08 +0000 |
---|---|---|
committer | Will Thompson <wjt@endlessos.org> | 2023-03-30 19:59:08 +0000 |
commit | 9fb0ab9a4f787b28ee86b85196bc0ce8f511b1f5 (patch) | |
tree | f550a65b6fa78f56e992faa046ce0ae75ab4587d | |
parent | 78fd2a1efbd0c8c8901852a4e8ec46a5d839e83d (diff) | |
parent | c550106e96d65418f60c25201911651c8bd53e69 (diff) | |
download | gnome-initial-setup-9fb0ab9a4f787b28ee86b85196bc0ce8f511b1f5.tar.gz |
Merge branch 'wip/wjt/187-crash-in-get_locale_infos' into 'master'
keyboard: Don't call g_free on uninitialized variable
Closes #187
See merge request GNOME/gnome-initial-setup!199
-rw-r--r-- | gnome-initial-setup/pages/keyboard/cc-input-chooser.c | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/gnome-initial-setup/pages/keyboard/cc-input-chooser.c b/gnome-initial-setup/pages/keyboard/cc-input-chooser.c index 80f36f2..6b6bd97 100644 --- a/gnome-initial-setup/pages/keyboard/cc-input-chooser.c +++ b/gnome-initial-setup/pages/keyboard/cc-input-chooser.c @@ -407,7 +407,8 @@ get_locale_infos (CcInputChooser *chooser) CcInputChooserPrivate *priv = cc_input_chooser_get_instance_private (chooser); const gchar *type = NULL; const gchar *id = NULL; - gchar *lang, *country; + g_autofree gchar *lang = NULL; + g_autofree gchar *country = NULL; GList *list; if (gnome_get_input_source_from_locale (priv->locale, &type, &id)) { @@ -419,7 +420,7 @@ get_locale_infos (CcInputChooser *chooser) } if (!gnome_parse_locale (priv->locale, &lang, &country, NULL, NULL)) - goto out; + return; list = gnome_xkb_info_get_layouts_for_language (priv->xkb_info, lang); add_rows_to_list (chooser, list, INPUT_SOURCE_TYPE_XKB, id); @@ -436,10 +437,6 @@ get_locale_infos (CcInputChooser *chooser) list = gnome_xkb_info_get_all_layouts (priv->xkb_info); add_rows_to_list (chooser, list, INPUT_SOURCE_TYPE_XKB, id); g_list_free (list); - -out: - g_free (lang); - g_free (country); } static gboolean |