diff options
author | taxigps <taxigps@sina.com> | 2014-03-12 14:08:25 +0800 |
---|---|---|
committer | taxigps <taxigps@sina.com> | 2014-03-13 09:20:43 +0800 |
commit | 9ccdae7c8ee7d00a291b70a4dcc0c74941c3aca3 (patch) | |
tree | a9a0bd4a2ace9a9554631092f649af963e78641a /lib/UnrarXLib/extract.cpp | |
parent | 6f389df95d743865333e0396a1d3d73623a0f562 (diff) |
fixed UnrarXlib: can't extract file with non-english file name.
Diffstat (limited to 'lib/UnrarXLib/extract.cpp')
-rw-r--r-- | lib/UnrarXLib/extract.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/lib/UnrarXLib/extract.cpp b/lib/UnrarXLib/extract.cpp index ea9b8f9257..256da0401d 100644 --- a/lib/UnrarXLib/extract.cpp +++ b/lib/UnrarXLib/extract.cpp @@ -614,7 +614,12 @@ bool CmdExtract::ExtractCurrentFile(CommandData *Cmd,Archive &Arc,int HeaderSize #endif return(true); } - if (CUtil::CreateDirectoryEx(DestFileName)) + char _name[NM]; + if (WideName) + WideToUtf(DestFileNameW, _name, sizeof(_name)); + else + strcpy(_name, DestFileName); + if (CUtil::CreateDirectoryEx(_name)) { #ifndef GUI mprintf(St(MCreatDir),DestFileName); |