aboutsummaryrefslogtreecommitdiff
path: root/lib/UnrarXLib/extract.cpp
diff options
context:
space:
mode:
authortaxigps <taxigps@sina.com>2014-03-12 14:08:25 +0800
committertaxigps <taxigps@sina.com>2014-03-13 09:20:43 +0800
commit9ccdae7c8ee7d00a291b70a4dcc0c74941c3aca3 (patch)
treea9a0bd4a2ace9a9554631092f649af963e78641a /lib/UnrarXLib/extract.cpp
parent6f389df95d743865333e0396a1d3d73623a0f562 (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.cpp7
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);