mirror of
https://github.com/tmate-io/tmate.git
synced 2024-11-24 00:53:31 +01:00
Check the first of LC_CTYPE, LC_ALL and LANG, rather than just the last, when
trying to decide about UTF-8, and use strcasestr. Reported by Geert Hendrickx.
This commit is contained in:
parent
fbcee9f114
commit
6f4600c533
11
tmux.c
11
tmux.c
@ -1,4 +1,4 @@
|
||||
/* $OpenBSD: tmux.c,v 1.7 2009/06/04 21:56:14 nicm Exp $ */
|
||||
/* $OpenBSD: tmux.c,v 1.8 2009/06/05 07:22:23 nicm Exp $ */
|
||||
|
||||
/*
|
||||
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
|
||||
@ -342,12 +342,17 @@ main(int argc, char **argv)
|
||||
|
||||
if (!(flags & IDENTIFY_UTF8)) {
|
||||
/*
|
||||
* If the user has set LANG to contain UTF-8, it is a safe
|
||||
* If the user has set whichever of LC_ALL, LC_CTYPE or LANG
|
||||
* exist (in that order) to contain UTF-8, it is a safe
|
||||
* assumption that either they are using a UTF-8 terminal, or
|
||||
* if not they know that output from UTF-8-capable programs may
|
||||
* be wrong.
|
||||
*/
|
||||
if ((s = getenv("LANG")) != NULL && strstr(s, "UTF-8") != NULL)
|
||||
if ((s = getenv("LC_CTYPE")) == NULL) {
|
||||
if ((s = getenv("LC_ALL")) == NULL)
|
||||
s = getenv("LANG");
|
||||
}
|
||||
if (s != NULL && strcasestr(s, "UTF-8") != NULL)
|
||||
flags |= IDENTIFY_UTF8;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user