OSDN Git Service

BUG: [ 2012377 ] UTF-8 encoding shown as 65001
authorKimmo Varis <kimmov@gmail.com>
Fri, 11 Jul 2008 07:01:59 +0000 (07:01 +0000)
committerKimmo Varis <kimmov@gmail.com>
Fri, 11 Jul 2008 07:01:59 +0000 (07:01 +0000)
Docs/Users/ChangeLog.txt
Src/FileTextEncoding.cpp

index 8a19d42..187e6d8 100644 (file)
@@ -12,6 +12,7 @@ WinMerge 2.11.1.1
   BugFix: Use system codepage for paths (#1979429, #2008581)
   BugFix: ANSI build crash in folder compare (#2010053)
   BugFix: Add insert/overtype mode indicator to statusbar (#2015174)
+  BugFix: Detected UTF-8 encoding shown as 65001 (#2012377)
 
 WinMerge 2.10.x (R2_10) branch created (r5561)
 
index a0e0818..227307c 100644 (file)
@@ -74,10 +74,18 @@ String FileTextEncoding::GetName() const
        String str;
        if (m_codepage > -1)
        {
-               str.resize(32);
-               LPTSTR s = &*str.begin(); //GetBuffer(32);
-               int len = _sntprintf(s, 32, _T("%d"), m_codepage);
-               str.resize(len);
+               if (m_codepage == CP_UTF8)
+               {
+                       // We detected codepage to be UTF-8, but unicoding was not set
+                       str = LoadResString(IDS_UNICODING_UTF8);
+               }
+               else
+               {
+                       str.resize(32);
+                       LPTSTR s = &*str.begin(); //GetBuffer(32);
+                       int len = _sntprintf(s, 32, _T("%d"), m_codepage);
+                       str.resize(len);
+               }
        }
        return str;
 }