-
Notifications
You must be signed in to change notification settings - Fork 1
/
OpenCallback.cpp
90 lines (72 loc) · 1.55 KB
/
OpenCallback.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
/*** This file is based on code from 7zip ***/
// OpenCallbackConsole.cpp
//#include "StdAfx.h"
#include "OpenCallback.hpp"
#include "7zip/UI/Console/ConsoleClose.h"
#include "7zip/UI/Console/UserInputUtils.h"
static HRESULT CheckBreak2()
{
return NConsoleClose::TestBreakSignal() ? E_ABORT : S_OK;
}
HRESULT COpenCallback::Open_CheckBreak()
{
return CheckBreak2();
}
HRESULT COpenCallback::Open_SetTotal(const UInt64 *files, const UInt64 *bytes)
{
if (!MutiArcMode)
{
if (files)
{
_totalFilesDefined = true;
// _totalFiles = *files;
}
else
_totalFilesDefined = false;
if (bytes)
{
_totalBytesDefined = true;
// _totalBytes = *bytes;
}
else
_totalBytesDefined = false;
}
return CheckBreak2();
}
HRESULT COpenCallback::Open_SetCompleted(const UInt64 *files, const UInt64 *bytes)
{
return CheckBreak2();
}
HRESULT COpenCallback::Open_Finished()
{
return S_OK;
}
#ifndef _NO_CRYPTO
HRESULT COpenCallback::Open_CryptoGetTextPassword(BSTR *password)
{
*password = NULL;
RINOK(CheckBreak2());
if (!PasswordIsDefined)
{
Password = GetPassword(_so);
PasswordIsDefined = true;
}
return StringToBstr(Password, password);
}
/*
HRESULT COpenCallback::Open_GetPasswordIfAny(bool &passwordIsDefined, UString &password)
{
passwordIsDefined = PasswordIsDefined;
password = Password;
return S_OK;
}
bool COpenCallback::Open_WasPasswordAsked()
{
return PasswordWasAsked;
}
void COpenCallback::Open_Clear_PasswordWasAsked_Flag ()
{
PasswordWasAsked = false;
}
*/
#endif