diff options
Diffstat (limited to 'testing/nvi/27support_C_locale.patch')
-rw-r--r-- | testing/nvi/27support_C_locale.patch | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/testing/nvi/27support_C_locale.patch b/testing/nvi/27support_C_locale.patch new file mode 100644 index 0000000000..97d2141d16 --- /dev/null +++ b/testing/nvi/27support_C_locale.patch @@ -0,0 +1,27 @@ +From: <hesso@pool.math.tu-berlin.de> +Subject: Allow users to edit 8-bit files even under LC_CTYPE=C. + +--- nvi-1.81.6.orig/common/conv.c 2007-11-18 17:41:42.000000000 +0100 ++++ nvi-1.81.6/common/conv.c 2009-03-09 16:45:37.812022582 +0100 +@@ -322,11 +322,16 @@ + else { + setlocale(LC_ALL, ""); + #ifdef USE_WIDECHAR +- sp->conv.sys2int = cs_char2int; +- sp->conv.int2sys = cs_int2char; +- sp->conv.file2int = fe_char2int; +- sp->conv.int2file = fe_int2char; +- sp->conv.input2int = ie_char2int; ++ if (!strcmp(LANGCODESET, "ANSI_X3.4-1968")) { ++ sp->conv.file2int = sp->conv.input2int = sp->conv.sys2int = raw2int; ++ sp->conv.int2sys = sp->conv.int2file = int2raw; ++ } else { ++ sp->conv.sys2int = cs_char2int; ++ sp->conv.int2sys = cs_int2char; ++ sp->conv.file2int = fe_char2int; ++ sp->conv.int2file = fe_int2char; ++ sp->conv.input2int = ie_char2int; ++ } + #endif + #ifdef USE_ICONV + o_set(sp, O_FILEENCODING, OS_STRDUP, nl_langinfo(CODESET), 0); |