diff options
Diffstat (limited to 'CPP/7zip/Common/CWrappers.cpp')
-rw-r--r-- | CPP/7zip/Common/CWrappers.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/CPP/7zip/Common/CWrappers.cpp b/CPP/7zip/Common/CWrappers.cpp index 5e1f8e3f..d6b04206 100644 --- a/CPP/7zip/Common/CWrappers.cpp +++ b/CPP/7zip/Common/CWrappers.cpp @@ -28,14 +28,23 @@ HRESULT SResToHRESULT(SRes res) throw() switch (res) { case SZ_OK: return S_OK; - case SZ_ERROR_DATA: return S_FALSE; - case SZ_ERROR_CRC: return S_FALSE; + + case SZ_ERROR_DATA: + case SZ_ERROR_CRC: + case SZ_ERROR_INPUT_EOF: + return S_FALSE; + case SZ_ERROR_MEM: return E_OUTOFMEMORY; case SZ_ERROR_PARAM: return E_INVALIDARG; case SZ_ERROR_PROGRESS: return E_ABORT; case SZ_ERROR_UNSUPPORTED: return E_NOTIMPL; - // case SZ_ERROR_THREAD: return E_FAIL; - // case SZ_ERROR_READ: return E_FAIL; + // case SZ_ERROR_OUTPUT_EOF: + // case SZ_ERROR_READ: + // case SZ_ERROR_WRITE: + // case SZ_ERROR_THREAD: + // case SZ_ERROR_ARCHIVE: + // case SZ_ERROR_NO_ARCHIVE: + // return E_FAIL; } if (res < 0) return res; |