diff --git a/src/nano.c b/src/nano.c index d0fed49206c12987fcd6ee1297d44693e56e04fb..abd573ee2df83eac49f3d18e1453eec66471cf21 100644 --- a/src/nano.c +++ b/src/nano.c @@ -1998,18 +1998,14 @@ int main(int argc, char **argv) tcgetattr(0, &oldterm); #ifdef ENABLE_UTF8 - { - /* If the locale set exists and uses UTF-8, we should use - * UTF-8. */ - char *locale = setlocale(LC_ALL, ""); - - if (locale != NULL && (strcmp(nl_langinfo(CODESET), - "UTF-8") == 0)) { + /* If setting the locale is successful and it uses UTF-8, we need + * to use the multibyte functions for text processing. */ + if (setlocale(LC_ALL, "") != NULL && + strcmp(nl_langinfo(CODESET), "UTF-8") == 0) { #ifdef USE_SLANG - SLutf8_enable(1); + SLutf8_enable(1); #endif - utf8_init(); - } + utf8_init(); } #else setlocale(LC_ALL, "");