diff options
Diffstat (limited to 'src/thirdparty/unrar/win32stm.cpp')
-rw-r--r-- | src/thirdparty/unrar/win32stm.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/thirdparty/unrar/win32stm.cpp b/src/thirdparty/unrar/win32stm.cpp index edcd7b5fa..9e24c13ec 100644 --- a/src/thirdparty/unrar/win32stm.cpp +++ b/src/thirdparty/unrar/win32stm.cpp @@ -78,7 +78,7 @@ void ExtractStreams20(Archive &Arc,const wchar *FileName) #ifdef _WIN_ALL -void ExtractStreams(Archive &Arc,const wchar *FileName) +void ExtractStreams(Archive &Arc,const wchar *FileName,bool TestMode) { wchar FullName[NM+2]; if (FileName[0]!=0 && FileName[1]==0) @@ -89,9 +89,6 @@ void ExtractStreams(Archive &Arc,const wchar *FileName) else wcsncpyz(FullName,FileName,ASIZE(FullName)); - byte *Data=&Arc.SubHead.SubData[0]; - size_t DataSize=Arc.SubHead.SubData.Size(); - wchar StreamName[NM]; GetStreamNameNTFS(Arc,StreamName,ASIZE(StreamName)); if (*StreamName!=':') @@ -101,6 +98,12 @@ void ExtractStreams(Archive &Arc,const wchar *FileName) return; } + if (TestMode) + { + Arc.ReadSubData(NULL,NULL); + return; + } + wcsncatz(FullName,StreamName,ASIZE(FullName)); FindData fd; |