diff --git a/Docs/src/history.but b/Docs/src/history.but index 722220ac..47c49440 100644 --- a/Docs/src/history.but +++ b/Docs/src/history.but @@ -6,6 +6,10 @@ Released on ? \S1{v3.0a2-cl} Changelog +\S2{} Major Changes + +\b !include defaults to UTF-8 after \cw{Unicode True} + \S2{} Minor Changes \b FileRead in Unicode installers can handle DBCS, conversion output is limited to UCS-2. diff --git a/Source/script.cpp b/Source/script.cpp index d153f2cb..1aba0adc 100644 --- a/Source/script.cpp +++ b/Source/script.cpp @@ -877,6 +877,12 @@ int CEXEBuild::includeScript(const TCHAR *f, NStreamEncoding&enc) { NIStream incstrm; const bool openok = incstrm.OpenFileForReading(f,enc); + if ( // !include defaults to UTF-8 after "Unicode true" + NStreamEncoding::AUTO == enc.GetCodepage() && build_unicode && + enc.GetPlatformDefaultCodepage() == incstrm.StreamEncoding().GetCodepage() + ) incstrm.StreamEncoding().SetCodepage(NStreamEncoding::UTF8); + enc = incstrm.StreamEncoding(); + TCHAR bufcpdisp[20]; incstrm.StreamEncoding().GetCPDisplayName(bufcpdisp); SCRIPT_MSG(_T("!include: \"%s\" (%s)\n"),f,bufcpdisp);