| Index: third_party/lzma/v4_65/files/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp
|
| diff --git a/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp b/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp
|
| deleted file mode 100644
|
| index 8f289d1b2b293022e72d8d0b54b691f2a3020588..0000000000000000000000000000000000000000
|
| --- a/third_party/lzma/v4_65/files/CPP/7zip/UI/Common/ArchiveOpenCallback.cpp
|
| +++ /dev/null
|
| @@ -1,129 +0,0 @@
|
| -// ArchiveOpenCallback.cpp
|
| -
|
| -#include "StdAfx.h"
|
| -
|
| -#include "ArchiveOpenCallback.h"
|
| -
|
| -#include "Common/StringConvert.h"
|
| -#include "Common/ComTry.h"
|
| -#include "Windows/PropVariant.h"
|
| -
|
| -#include "../../Common/FileStreams.h"
|
| -
|
| -using namespace NWindows;
|
| -
|
| -STDMETHODIMP COpenCallbackImp::SetTotal(const UInt64 *files, const UInt64 *bytes)
|
| -{
|
| - COM_TRY_BEGIN
|
| - if (ReOpenCallback)
|
| - return ReOpenCallback->SetTotal(files, bytes);
|
| - if (!Callback)
|
| - return S_OK;
|
| - return Callback->Open_SetTotal(files, bytes);
|
| - COM_TRY_END
|
| -}
|
| -
|
| -STDMETHODIMP COpenCallbackImp::SetCompleted(const UInt64 *files, const UInt64 *bytes)
|
| -{
|
| - COM_TRY_BEGIN
|
| - if (ReOpenCallback)
|
| - return ReOpenCallback->SetCompleted(files, bytes);
|
| - if (!Callback)
|
| - return S_OK;
|
| - return Callback->Open_SetCompleted(files, bytes);
|
| - COM_TRY_END
|
| -}
|
| -
|
| -STDMETHODIMP COpenCallbackImp::GetProperty(PROPID propID, PROPVARIANT *value)
|
| -{
|
| - COM_TRY_BEGIN
|
| - NCOM::CPropVariant prop;
|
| - if (_subArchiveMode)
|
| - switch(propID)
|
| - {
|
| - case kpidName: prop = _subArchiveName; break;
|
| - }
|
| - else
|
| - switch(propID)
|
| - {
|
| - case kpidName: prop = _fileInfo.Name; break;
|
| - case kpidIsDir: prop = _fileInfo.IsDir(); break;
|
| - case kpidSize: prop = _fileInfo.Size; break;
|
| - case kpidAttrib: prop = (UInt32)_fileInfo.Attrib; break;
|
| - case kpidCTime: prop = _fileInfo.CTime; break;
|
| - case kpidATime: prop = _fileInfo.ATime; break;
|
| - case kpidMTime: prop = _fileInfo.MTime; break;
|
| - }
|
| - prop.Detach(value);
|
| - return S_OK;
|
| - COM_TRY_END
|
| -}
|
| -
|
| -int COpenCallbackImp::FindName(const UString &name)
|
| -{
|
| - for (int i = 0; i < FileNames.Size(); i++)
|
| - if (name.CompareNoCase(FileNames[i]) == 0)
|
| - return i;
|
| - return -1;
|
| -}
|
| -
|
| -struct CInFileStreamVol: public CInFileStream
|
| -{
|
| - UString Name;
|
| - COpenCallbackImp *OpenCallbackImp;
|
| - CMyComPtr<IArchiveOpenCallback> OpenCallbackRef;
|
| - ~CInFileStreamVol()
|
| - {
|
| - int index = OpenCallbackImp->FindName(Name);
|
| - if (index >= 0)
|
| - OpenCallbackImp->FileNames.Delete(index);
|
| - }
|
| -};
|
| -
|
| -STDMETHODIMP COpenCallbackImp::GetStream(const wchar_t *name, IInStream **inStream)
|
| -{
|
| - COM_TRY_BEGIN
|
| - if (_subArchiveMode)
|
| - return S_FALSE;
|
| - if (Callback)
|
| - {
|
| - RINOK(Callback->Open_CheckBreak());
|
| - }
|
| - *inStream = NULL;
|
| - UString fullPath = _folderPrefix + name;
|
| - if (!NFile::NFind::FindFile(fullPath, _fileInfo))
|
| - return S_FALSE;
|
| - if (_fileInfo.IsDir())
|
| - return S_FALSE;
|
| - CInFileStreamVol *inFile = new CInFileStreamVol;
|
| - CMyComPtr<IInStream> inStreamTemp = inFile;
|
| - if (!inFile->Open(fullPath))
|
| - return ::GetLastError();
|
| - *inStream = inStreamTemp.Detach();
|
| - inFile->Name = name;
|
| - inFile->OpenCallbackImp = this;
|
| - inFile->OpenCallbackRef = this;
|
| - FileNames.Add(name);
|
| - TotalSize += _fileInfo.Size;
|
| - return S_OK;
|
| - COM_TRY_END
|
| -}
|
| -
|
| -#ifndef _NO_CRYPTO
|
| -STDMETHODIMP COpenCallbackImp::CryptoGetTextPassword(BSTR *password)
|
| -{
|
| - COM_TRY_BEGIN
|
| - if (ReOpenCallback)
|
| - {
|
| - CMyComPtr<ICryptoGetTextPassword> getTextPassword;
|
| - ReOpenCallback.QueryInterface(IID_ICryptoGetTextPassword, &getTextPassword);
|
| - if (getTextPassword)
|
| - return getTextPassword->CryptoGetTextPassword(password);
|
| - }
|
| - if (!Callback)
|
| - return E_NOTIMPL;
|
| - return Callback->Open_CryptoGetTextPassword(password);
|
| - COM_TRY_END
|
| -}
|
| -#endif
|
| -
|
|
|