From f05f780dcd3a8037404c9f49e9361fb4a87754d9 Mon Sep 17 00:00:00 2001 From: Vladimir Zhbanov Date: Fri, 4 Oct 2013 12:46:47 +0400 Subject: [PATCH] gschem: prevent using any encoding excepting UTF-8 or C If the current encoding is not UTF-8, use C instead. This prevents garbled terminal output from gschem. --- gschem/src/gschem.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/gschem/src/gschem.c b/gschem/src/gschem.c index 688a988..0eb8a8b 100644 --- a/gschem/src/gschem.c +++ b/gschem/src/gschem.c @@ -37,6 +37,10 @@ #include #endif +#if ENABLE_NLS +#include +#endif + /* These are generated by parse_commandline() */ extern SCM s_pre_load_expr; extern SCM s_post_load_expr; @@ -348,7 +352,9 @@ int main (int argc, char *argv[]) setlocale(LC_NUMERIC, "C"); bindtextdomain("geda-gschem", LOCALEDIR); textdomain("geda-gschem"); - bind_textdomain_codeset("geda-gschem", "UTF-8"); + (g_strcmp0(nl_langinfo(CODESET),"UTF-8") == 0) ? + bind_textdomain_codeset("geda-gschem", "UTF-8") : + bind_textdomain_codeset("geda-gschem", "C"); #endif scm_boot_guile (argc, argv, main_prog, 0); -- 1.7.2.3