msxml3: Delete the dispex static critical section when unloading the dll.
This commit is contained in:
parent
94091b9bd1
commit
a3e2c68f98
|
@ -45,6 +45,16 @@
|
|||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(msxml);
|
||||
|
||||
static CRITICAL_SECTION cs_dispex_static_data;
|
||||
static CRITICAL_SECTION_DEBUG cs_dispex_static_data_dbg =
|
||||
{
|
||||
0, 0, &cs_dispex_static_data,
|
||||
{ &cs_dispex_static_data_dbg.ProcessLocksList, &cs_dispex_static_data_dbg.ProcessLocksList },
|
||||
0, 0, { (DWORD_PTR)(__FILE__ ": dispex_static_data") }
|
||||
};
|
||||
static CRITICAL_SECTION cs_dispex_static_data = { &cs_dispex_static_data_dbg, -1, 0, 0, 0, 0 };
|
||||
|
||||
|
||||
enum lib_version_t
|
||||
{
|
||||
LibXml = 0,
|
||||
|
@ -206,6 +216,8 @@ void release_typelib(void)
|
|||
for(i=0; i < sizeof(typelib)/sizeof(*typelib); i++)
|
||||
if(typelib[i])
|
||||
ITypeLib_Release(typelib[i]);
|
||||
|
||||
DeleteCriticalSection(&cs_dispex_static_data);
|
||||
}
|
||||
|
||||
static void add_func_info(dispex_data_t *data, DWORD *size, tid_t tid, DISPID id, ITypeInfo *dti)
|
||||
|
@ -301,16 +313,6 @@ static dispex_data_t *preprocess_dispex_data(DispatchEx *This)
|
|||
return data;
|
||||
}
|
||||
|
||||
static CRITICAL_SECTION cs_dispex_static_data;
|
||||
static CRITICAL_SECTION_DEBUG cs_dispex_static_data_dbg =
|
||||
{
|
||||
0, 0, &cs_dispex_static_data,
|
||||
{ &cs_dispex_static_data_dbg.ProcessLocksList, &cs_dispex_static_data_dbg.ProcessLocksList },
|
||||
0, 0, { (DWORD_PTR)(__FILE__ ": dispex_static_data") }
|
||||
};
|
||||
static CRITICAL_SECTION cs_dispex_static_data = { &cs_dispex_static_data_dbg, -1, 0, 0, 0, 0 };
|
||||
|
||||
|
||||
static dispex_data_t *get_dispex_data(DispatchEx *This)
|
||||
{
|
||||
if(This->data->data)
|
||||
|
|
Loading…
Reference in New Issue