From bb1dbd720af2650eb97a42fe4df8c6aea2689ef3 Mon Sep 17 00:00:00 2001 From: wmayer Date: Wed, 25 Jul 2018 16:57:38 +0200 Subject: [PATCH] handling of UTF-8 in zipios++ on Win32 --- src/Base/CMakeLists.txt | 1 + src/zipios++/zipfile.cpp | 4 ++-- src/zipios++/zipinputstream.cpp | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/Base/CMakeLists.txt b/src/Base/CMakeLists.txt index d589d4d062..8e14465872 100644 --- a/src/Base/CMakeLists.txt +++ b/src/Base/CMakeLists.txt @@ -2,6 +2,7 @@ if(WIN32) add_definitions(-DFCBase) add_definitions(-DPYCXX_DLL) add_definitions(-DBOOST_DYN_LINK) + add_definitions(-DZIPIOS_UTF8) endif(WIN32) include_directories( diff --git a/src/zipios++/zipfile.cpp b/src/zipios++/zipfile.cpp index 6811eba518..498d81d610 100644 --- a/src/zipios++/zipfile.cpp +++ b/src/zipios++/zipfile.cpp @@ -9,7 +9,7 @@ #include "zipios_defs.h" #include "backbuffer.h" -#if defined(_WIN32) +#if defined(_WIN32) && defined(ZIPIOS_UTF8) #include #endif @@ -36,7 +36,7 @@ ZipFile::ZipFile( const string &name , int s_off, int e_off _filename = name ; -#if defined(_WIN32) +#if defined(_WIN32) && defined(ZIPIOS_UTF8) std::wstring wsname = Base::FileInfo(name).toStdWString(); ifstream _zipfile( wsname.c_str(), ios::in | ios::binary ) ; #else diff --git a/src/zipios++/zipinputstream.cpp b/src/zipios++/zipinputstream.cpp index 606e9e2584..f16f993c19 100644 --- a/src/zipios++/zipinputstream.cpp +++ b/src/zipios++/zipinputstream.cpp @@ -5,7 +5,7 @@ #include "zipinputstreambuf.h" #include "zipinputstream.h" -#if defined(_WIN32) +#if defined(_WIN32) && defined(ZIPIOS_UTF8) #include #endif @@ -27,7 +27,7 @@ ZipInputStream::ZipInputStream( const std::string &filename, std::streampos pos : std::istream( 0 ), ifs( 0 ) { -#if defined(_WIN32) +#if defined(_WIN32) && defined(ZIPIOS_UTF8) std::wstring wsname = Base::FileInfo(filename).toStdWString(); ifs = new std::ifstream( wsname.c_str(), std::ios::in |std:: ios::binary ) ; #else