\r
wxString UTF82String(const char * sz)\r
{\r
- return wxString(sz, wxConvUTF8);\r
+ wxString s = wxString(sz, wxConvUTF8);\r
+ return s.IsEmpty() ? MB2String(sz) : s;\r
}\r
\r
wxString WC2String(const wchar_t * sz)\r
_fiInfo->nUnpackedSize = iiInfo.dwOriginalSize;\r
_fiInfo->tmModify.SetFromDOS(MAKELONG(iiInfo.wTime, iiInfo.wDate));\r
_fiInfo->szStoredName = UTF82String(iiInfo.szFileName);\r
- if (_fiInfo->szStoredName.IsEmpty())\r
- {\r
- _fiInfo->szStoredName = wxString(iiInfo.szFileName);\r
- }\r
if (strlen(iiInfo.szFileName) >= 510 && fpName)\r
{\r
char * sz = (char *) malloc(32769);\r
memset(sz, 0, 32769);\r
((int (__stdcall *)(void *, char *, const int)) fpName)(_hArchive, sz, 32768);\r
_fiInfo->szStoredName = UTF82String(sz);\r
- if (_fiInfo->szStoredName.IsEmpty())\r
- {\r
- _fiInfo->szStoredName = wxString(sz);\r
- }\r
free(sz);\r
}\r
_fiInfo->szMethod = UTF82String(iiInfo.szMode);\r