aboutsummaryrefslogtreecommitdiff
path: root/src/burn/engine/EngineForApplication.h
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2022-10-19 15:44:40 -0500
committerSean Hall <r.sean.hall@gmail.com>2022-10-25 15:13:06 -0500
commit98080672cdbbde00ea40a96c1ce38e8a52f24fee (patch)
tree9c0b859f147d55d5c4caadccfd764ca84ed7e648 /src/burn/engine/EngineForApplication.h
parent28e9c7c14d2a156b55476f6b8e39e13f17aa87b6 (diff)
downloadwix-98080672cdbbde00ea40a96c1ce38e8a52f24fee.tar.gz
wix-98080672cdbbde00ea40a96c1ce38e8a52f24fee.tar.bz2
wix-98080672cdbbde00ea40a96c1ce38e8a52f24fee.zip
Add queutil so Burn can manage its own queue of BA requested actions.
Fixes 6349
Diffstat (limited to 'src/burn/engine/EngineForApplication.h')
-rw-r--r--src/burn/engine/EngineForApplication.h33
1 files changed, 32 insertions, 1 deletions
diff --git a/src/burn/engine/EngineForApplication.h b/src/burn/engine/EngineForApplication.h
index d25a7e51..bf86b7ee 100644
--- a/src/burn/engine/EngineForApplication.h
+++ b/src/burn/engine/EngineForApplication.h
@@ -11,9 +11,40 @@ extern "C" {
11typedef struct _BOOTSTRAPPER_ENGINE_CONTEXT 11typedef struct _BOOTSTRAPPER_ENGINE_CONTEXT
12{ 12{
13 BURN_ENGINE_STATE* pEngineState; 13 BURN_ENGINE_STATE* pEngineState;
14 DWORD dwThreadId; 14 QUEUTIL_QUEUE_HANDLE hQueue;
15 HANDLE hQueueSemaphore;
16 CRITICAL_SECTION csQueue;
15} BOOTSTRAPPER_ENGINE_CONTEXT; 17} BOOTSTRAPPER_ENGINE_CONTEXT;
16 18
19typedef struct _BOOTSTRAPPER_ENGINE_ACTION
20{
21 WM_BURN dwMessage;
22 union
23 {
24 struct
25 {
26 HWND hwndParent;
27 } detect;
28 struct
29 {
30 BOOTSTRAPPER_ACTION action;
31 } plan;
32 struct
33 {
34 HWND hwndParent;
35 } elevate;
36 struct
37 {
38 HWND hwndParent;
39 } apply;
40 BURN_LAUNCH_APPROVED_EXE launchApprovedExe;
41 struct
42 {
43 DWORD dwExitCode;
44 } quit;
45 };
46} BOOTSTRAPPER_ENGINE_ACTION;
47
17// function declarations 48// function declarations
18 49
19HRESULT WINAPI EngineForApplicationProc( 50HRESULT WINAPI EngineForApplicationProc(