Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
d63ed91c
Commit
d63ed91c
authored
Apr 01, 2021
by
Nikolay Sivov
Committed by
Alexandre Julliard
Apr 01, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
combase: Return initial values for global options.
Signed-off-by:
Nikolay Sivov
<
nsivov@codeweavers.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
583d2cbf
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
49 additions
and
3 deletions
+49
-3
combase.c
dlls/combase/combase.c
+9
-2
compobj.c
dlls/ole32/tests/compobj.c
+13
-0
objidlbase.idl
include/objidlbase.idl
+27
-1
No files found.
dlls/combase/combase.c
View file @
d63ed91c
...
...
@@ -38,6 +38,8 @@ WINE_DEFAULT_DEBUG_CHANNEL(ole);
HINSTANCE
hProxyDll
;
static
ULONG_PTR
global_options
[
COMGLB_PROPERTIES_RESERVED3
+
1
];
/* Ole32 exports */
extern
void
WINAPI
DestroyRunningObjectTable
(
void
);
extern
HRESULT
WINAPI
Ole32DllGetClassObject
(
REFCLSID
rclsid
,
REFIID
riid
,
void
**
obj
);
...
...
@@ -490,9 +492,14 @@ static HRESULT WINAPI global_options_Set(IGlobalOptions *iface, GLOBALOPT_PROPER
static
HRESULT
WINAPI
global_options_Query
(
IGlobalOptions
*
iface
,
GLOBALOPT_PROPERTIES
property
,
ULONG_PTR
*
value
)
{
FIXM
E
(
"%p, %u, %p.
\n
"
,
iface
,
property
,
value
);
TRAC
E
(
"%p, %u, %p.
\n
"
,
iface
,
property
,
value
);
return
E_NOTIMPL
;
if
(
property
<
COMGLB_EXCEPTION_HANDLING
||
property
>
COMGLB_PROPERTIES_RESERVED3
)
return
E_INVALIDARG
;
*
value
=
global_options
[
property
];
return
S_OK
;
}
static
const
IGlobalOptionsVtbl
global_options_vtbl
=
...
...
dlls/ole32/tests/compobj.c
View file @
d63ed91c
...
...
@@ -3919,6 +3919,7 @@ todo_wine {
static
void
test_GlobalOptions
(
void
)
{
IGlobalOptions
*
global_options
;
ULONG_PTR
value
;
HRESULT
hres
;
CoInitialize
(
NULL
);
...
...
@@ -3933,6 +3934,18 @@ static void test_GlobalOptions(void)
return
;
}
hres
=
IGlobalOptions_Query
(
global_options
,
0
,
&
value
);
ok
(
FAILED
(
hres
),
"Unexpected hr %#x.
\n
"
,
hres
);
hres
=
IGlobalOptions_Query
(
global_options
,
COMGLB_PROPERTIES_RESERVED3
+
1
,
&
value
);
ok
(
FAILED
(
hres
),
"Unexpected hr %#x.
\n
"
,
hres
);
value
=
~
0u
;
hres
=
IGlobalOptions_Query
(
global_options
,
COMGLB_EXCEPTION_HANDLING
,
&
value
);
ok
(
hres
==
S_OK
||
broken
(
hres
==
E_FAIL
)
/* Vista */
,
"Unexpected hr %#x.
\n
"
,
hres
);
if
(
SUCCEEDED
(
hres
))
ok
(
value
==
COMGLB_EXCEPTION_HANDLE
,
"Unexpected value %ld.
\n
"
,
value
);
IGlobalOptions_Release
(
global_options
);
hres
=
CoCreateInstance
(
&
CLSID_GlobalOptions
,
(
IUnknown
*
)
0xdeadbeef
,
CLSCTX_INPROC_SERVER
,
...
...
include/objidlbase.idl
View file @
d63ed91c
...
...
@@ -1095,7 +1095,12 @@ typedef enum tagGLOBALOPT_PROPERTIES
{
COMGLB_EXCEPTION_HANDLING = 1,
COMGLB_APPID = 2,
COMGLB_RPC_THREADPOOL_SETTING = 3
COMGLB_RPC_THREADPOOL_SETTING = 3,
COMGLB_RO_SETTINGS = 4,
COMGLB_UNMARSHALING_POLICY = 5,
COMGLB_PROPERTIES_RESERVED1 = 6,
COMGLB_PROPERTIES_RESERVED2 = 7,
COMGLB_PROPERTIES_RESERVED3 = 8,
} GLOBALOPT_PROPERTIES;
typedef enum tagGLOBALOPT_EH_VALUES
...
...
@@ -1112,6 +1117,27 @@ typedef enum tagGLOBALOPT_RPCTP_VALUES
COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1
} GLOBALOPT_RPCTP_VALUES;
typedef enum tagGLOBALOPT_RO_FLAGS
{
COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4,
COMGLB_FAST_RUNDOWN = 0x8,
COMGLB_RESERVED1 = 0x10,
COMGLB_RESERVED2 = 0x20,
COMGLB_RESERVED3 = 0x40,
COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80,
COMGLB_RESERVED4 = 0x100,
COMGLB_RESERVED5 = 0x200,
COMGLB_RESERVED6 = 0x400,
} GLOBALOPT_RO_FLAGS;
typedef enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES
{
COMGLB_UNMARSHALING_POLICY_NORMAL = 0,
COMGLB_UNMARSHALING_POLICY_STRONG = 1,
COMGLB_UNMARSHALING_POLICY_HYBRID = 2,
} GLOBALOPT_UNMARSHALING_POLICY_VALUES;
[
object,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment