Author: yuripv Date: Mon Jun 22 22:59:03 2020 New Revision: 362515 URL: https://svnweb.freebsd.org/changeset/base/362515
Log: Revert r362148. Breaks UTF-8 input for new or having only 7bit characters present files. Reported by: glebius Modified: head/contrib/nvi/common/exf.c Modified: head/contrib/nvi/common/exf.c ============================================================================== --- head/contrib/nvi/common/exf.c Mon Jun 22 22:43:09 2020 (r362514) +++ head/contrib/nvi/common/exf.c Mon Jun 22 22:59:03 2020 (r362515) @@ -1237,10 +1237,7 @@ file_encinit(SCR *sp) } /* - * 1. Check for valid UTF-8. - * 2. Check if fallback fileencoding is set and is NOT UTF-8. - * 3. Check if user locale's encoding is NOT UTF-8. - * 4. Use ISO8859-1 as last resort. + * Detect UTF-8 and fallback to the locale/preset encoding. * * XXX * A manually set O_FILEENCODING indicates the "fallback @@ -1249,13 +1246,9 @@ file_encinit(SCR *sp) */ if (looks_utf8(buf, blen) > 1) o_set(sp, O_FILEENCODING, OS_STRDUP, "utf-8", 0); - else if (O_ISSET(sp, O_FILEENCODING) && - strcasecmp(O_STR(sp, O_FILEENCODING), "utf-8") != 0) - /* Use fileencoding as is */ ; - else if (strcasecmp(codeset(), "utf-8") != 0) + else if (!O_ISSET(sp, O_FILEENCODING) || + !strcasecmp(O_STR(sp, O_FILEENCODING), "utf-8")) o_set(sp, O_FILEENCODING, OS_STRDUP, codeset(), 0); - else - o_set(sp, O_FILEENCODING, OS_STRDUP, "iso8859-1", 0); conv_enc(sp, O_FILEENCODING, 0); #endif _______________________________________________ svn-src-all@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"