diff options
author | Matthias Clasen <mclasen@redhat.com> | 2021-09-06 01:37:51 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2021-09-06 01:38:47 -0400 |
commit | 72dc9a21f79f66ddd7db3daac05d421afc93d5c1 (patch) | |
tree | 8c0a4e13e1d62065b721cad18eb661cd02712f17 | |
parent | 07bff74544269ce98f4d00872ef250c1b2374ce1 (diff) | |
download | gtk+-setlocale-gapplication-help.tar.gz |
GtkApplication: Call setlocale earlysetlocale-gapplication-help
If we don't call setlocale early enough,
--help output may come out misformatted.
Fixes: #4234
-rw-r--r-- | gtk/gtkapplication.c | 3 | ||||
-rw-r--r-- | gtk/gtkmain.c | 2 | ||||
-rw-r--r-- | gtk/gtkprivate.h | 2 |
3 files changed, 6 insertions, 1 deletions
diff --git a/gtk/gtkapplication.c b/gtk/gtkapplication.c index c26e15cadb..1408c0d9d2 100644 --- a/gtk/gtkapplication.c +++ b/gtk/gtkapplication.c @@ -294,6 +294,9 @@ gtk_application_local_command_line (GApplication *application, char ***arguments, int *exit_status) { + /* We need to call setlocale() here so --help output works */ + setlocale_initialization (); + return G_APPLICATION_CLASS (gtk_application_parent_class)->local_command_line (application, arguments, exit_status); } diff --git a/gtk/gtkmain.c b/gtk/gtkmain.c index e498822212..6dd0f7e871 100644 --- a/gtk/gtkmain.c +++ b/gtk/gtkmain.c @@ -362,7 +362,7 @@ enum_locale_proc (LPTSTR locale) #endif -static void +void setlocale_initialization (void) { static gboolean initialized = FALSE; diff --git a/gtk/gtkprivate.h b/gtk/gtkprivate.h index 8cb11c761c..3495e07efc 100644 --- a/gtk/gtkprivate.h +++ b/gtk/gtkprivate.h @@ -150,6 +150,8 @@ GBytes *get_emoji_data (void); char * _gtk_elide_underscores (const char *original); +void setlocale_initialization (void); + G_END_DECLS #endif /* __GTK_PRIVATE_H__ */ |