aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/charset.c11
-rw-r--r--src/charset.h3
-rw-r--r--src/main.c2
3 files changed, 8 insertions, 8 deletions
diff --git a/src/charset.c b/src/charset.c
index aaec39c72..701fd2105 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -27,11 +27,13 @@
extern void screen_status_printf(const char *format, ...);
static bool noconvert = true;
+static const char *charset;
-void
-charset_init(bool disable)
+const char *
+charset_init(void)
{
- noconvert = disable;
+ noconvert = g_get_charset(&charset);
+ return charset;
}
unsigned
@@ -75,9 +77,6 @@ utf8_to_locale(const char *utf8str)
&wb, &rb,
&error);
if (error) {
- const char *charset;
-
- g_get_charset(&charset);
screen_status_printf(_("Error: Unable to convert characters to %s"),
charset);
g_error_free(error);
diff --git a/src/charset.h b/src/charset.h
index 24f7ef632..70173d19c 100644
--- a/src/charset.h
+++ b/src/charset.h
@@ -23,7 +23,8 @@
#include <stdbool.h>
#include <stddef.h>
-void charset_init(bool disable);
+const char *
+charset_init(void);
/**
* Returns the number of terminal cells occupied by this string.
diff --git a/src/main.c b/src/main.c
index 0a9f7cb59..07198e7de 100644
--- a/src/main.c
+++ b/src/main.c
@@ -334,7 +334,7 @@ main(int argc, const char *argv[])
/* charset */
setlocale(LC_CTYPE,"");
/* initialize charset conversions */
- charset_init(g_get_charset(&charset));
+ charset = charset_init();
#endif
/* initialize i18n support */