Add fallback for locale-setting on systems without C.UTF-8 locale
This commit is contained in:
parent
e6103e70be
commit
b6480279fb
1 changed files with 7 additions and 4 deletions
11
lolcat.c
11
lolcat.c
|
|
@ -156,10 +156,13 @@ int main(int argc, char** argv)
|
|||
}
|
||||
|
||||
char* env_lang = getenv("LANG");
|
||||
if (force_locale && env_lang && !strstr(env_lang, "UTF-8"))
|
||||
setlocale(LC_ALL, "C.UTF-8");
|
||||
else
|
||||
if (force_locale && env_lang && !strstr(env_lang, "UTF-8")) {
|
||||
if (!setlocale(LC_ALL, "C.UTF-8")) { /* C.UTF-8 may not be available on all platforms */
|
||||
setlocale(LC_ALL, ""); /* Let's hope for the best */
|
||||
}
|
||||
} else {
|
||||
setlocale(LC_ALL, "");
|
||||
}
|
||||
|
||||
i = 0;
|
||||
for (char** filename = inputs; filename < inputs_end; filename++) {
|
||||
|
|
@ -215,7 +218,7 @@ int main(int argc, char** argv)
|
|||
|
||||
putwchar(c);
|
||||
|
||||
if (escape_state == 2)
|
||||
if (escape_state == 2) /* implies "colors" */
|
||||
wprintf(L"\033[38;5;%hhum", codes[(rand_offset + cc) % ARRAY_SIZE(codes)]);
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue