]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - ncurses/base/lib_newterm.c
ncurses 5.2
[ncurses.git] / ncurses / base / lib_newterm.c
index 08e35cf501822152e7bdd4c423d5a66b4ffb7586..7da4069b5b8505271bc6380ce51f33911de7b501 100644 (file)
 
 #include <curses.priv.h>
 
-#if defined(SVR4_TERMIO) && !defined(_POSIX_SOURCE)
+#if SVR4_TERMIO && !defined(_POSIX_SOURCE)
 #define _POSIX_SOURCE
 #endif
 
 #include <term.h>              /* clear_screen, cup & friends, cur_term */
 #include <tic.h>
 
-MODULE_ID("$Id: lib_newterm.c,v 1.46 2000/07/01 22:26:22 tom Exp $")
+MODULE_ID("$Id: lib_newterm.c,v 1.48 2000/09/02 18:11:42 tom Exp $")
 
 #ifndef ONLCR                  /* Allows compilation under the QNX 4.2 OS */
 #define ONLCR 0
@@ -191,17 +191,21 @@ newterm(NCURSES_CONST char *name, FILE * ofp, FILE * ifp)
     SP->_use_rmso = SGR0_TEST(exit_standout_mode);
     SP->_use_rmul = SGR0_TEST(exit_underline_mode);
 
-#ifdef USE_WIDEC_SUPPORT
+#if USE_WIDEC_SUPPORT
     /*
      * XFree86 xterm can be configured to support UTF-8 based on environment
      * variable settings.
      */
     {
        char *s;
-       if (((s = getenv("LC_ALL")) != 0
-               || (s = getenv("LC_CTYPE")) != 0
-               || (s = getenv("LANG")) != 0)
-           && strstr(s, "UTF-8") != 0) {
+       s = getenv("LC_ALL");
+       if (s == NULL || *s == '\0') {
+           s = getenv("LC_CTYPE");
+           if (s == NULL || *s == '\0') {
+               s = getenv("LANG");
+           }
+       }
+       if (s != NULL && *s != '\0' && strstr(s, "UTF-8") != NULL) {
            SP->_outch = _nc_utf8_outch;
        }
     }