From: sirakaba Date: Mon, 21 Mar 2011 09:38:35 +0000 (+0000) Subject: 文字列をUTF-8として変換できなかった場合にはマルチバイト文字として変換するよう変更。 X-Git-Tag: 0.01beta12~22 X-Git-Url: http://git.osdn.net/view?p=tpi%2Flychee.git;a=commitdiff_plain;h=f1f32b9f3db0e31080e406205f445076c9a191da 文字列をUTF-8として変換できなかった場合にはマルチバイト文字として変換するよう変更。 git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/tpi/tpi@516 9df91469-1e22-0410-86e7-ea8537beb833 --- diff --git a/src/common/library/library.cpp b/src/common/library/library.cpp index bc048f6..b94d62e 100644 --- a/src/common/library/library.cpp +++ b/src/common/library/library.cpp @@ -176,7 +176,8 @@ wxString MB2String(const char * sz) wxString UTF82String(const char * sz) { - return wxString(sz, wxConvUTF8); + wxString s = wxString(sz, wxConvUTF8); + return s.IsEmpty() ? MB2String(sz) : s; } wxString WC2String(const wchar_t * sz) diff --git a/src/plugin/calLibrary/calLibrary.cpp b/src/plugin/calLibrary/calLibrary.cpp index c8e1c6e..0dde981 100644 --- a/src/plugin/calLibrary/calLibrary.cpp +++ b/src/plugin/calLibrary/calLibrary.cpp @@ -817,20 +817,12 @@ int __stdcall GetFileInformation _fiInfo->nUnpackedSize = iiInfo.dwOriginalSize; _fiInfo->tmModify.SetFromDOS(MAKELONG(iiInfo.wTime, iiInfo.wDate)); _fiInfo->szStoredName = UTF82String(iiInfo.szFileName); - if (_fiInfo->szStoredName.IsEmpty()) - { - _fiInfo->szStoredName = wxString(iiInfo.szFileName); - } if (strlen(iiInfo.szFileName) >= 510 && fpName) { char * sz = (char *) malloc(32769); memset(sz, 0, 32769); ((int (__stdcall *)(void *, char *, const int)) fpName)(_hArchive, sz, 32768); _fiInfo->szStoredName = UTF82String(sz); - if (_fiInfo->szStoredName.IsEmpty()) - { - _fiInfo->szStoredName = wxString(sz); - } free(sz); } _fiInfo->szMethod = UTF82String(iiInfo.szMode);