https://bugs.kde.org/show_bug.cgi?id=89051

Méven <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|WORKSFORME                  |FIXED
      Latest Commit|                            |https://invent.kde.org/fram
                   |                            |eworks/karchive/-/commit/74
                   |                            |8b2d7f01d15133f27b08b7c549e
                   |                            |553b0ae9d44

--- Comment #12 from Méven <[email protected]> ---
Git commit 748b2d7f01d15133f27b08b7c549e553b0ae9d44 by Méven Car.
Committed on 03/11/2026 at 09:02.
Pushed by meven into branch 'master'.

kzip: read legacy names in the Windows OEM code page

Zip archivers on Windows write a name without the UTF-8 flag in the
OEM code page of the system, and Windows reads it the same way. Code
page 437 only fits some English locales. A Russian name in code page
866 came out as Latin and Greek letters.

Now a name that is not valid UTF-8 is read in the Windows OEM code
page. On Windows, KZip uses the OEM code page of the system. Elsewhere,
it uses the code page that Windows uses for the language and script of
the locale. That table comes from the Windows culture data in .NET,
linked from the code. The C locale gets code page 437, the default of
the zip specification. Code page 437 also stays the fallback when Qt
has no decoder for the code page, which happens without ICU.

M  +52   -6    autotests/karchivetest.cpp
M  +125  -12   src/kzip.cpp

https://invent.kde.org/frameworks/karchive/-/commit/748b2d7f01d15133f27b08b7c549e553b0ae9d44

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to