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
63ea015c
Commit
63ea015c
authored
Apr 05, 2007
by
Rob Shearman
Committed by
Alexandre Julliard
Apr 05, 2007
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ole32: Don't release the registered drop targets in OleUninitialize.
Do it in DLL_PROCESS_DETACH instead.
parent
47432cba
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
4 additions
and
9 deletions
+4
-9
compobj.c
dlls/ole32/compobj.c
+1
-0
compobj_private.h
dlls/ole32/compobj_private.h
+2
-0
ole2.c
dlls/ole32/ole2.c
+1
-7
dragdrop.c
dlls/ole32/tests/dragdrop.c
+0
-2
No files found.
dlls/ole32/compobj.c
View file @
63ea015c
...
...
@@ -3402,6 +3402,7 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
case
DLL_PROCESS_DETACH
:
if
(
TRACE_ON
(
ole
))
CoRevokeMallocSpy
();
OLEDD_UnInitialize
();
COMPOBJ_UninitProcess
();
RPC_UnregisterAllChannelHooks
();
OLE32_hInstance
=
0
;
...
...
dlls/ole32/compobj_private.h
View file @
63ea015c
...
...
@@ -242,6 +242,8 @@ HRESULT WINAPI RunningObjectTableImpl_UnInitialize(void);
/* This function decomposes a String path to a String Table containing all the elements ("\" or "subDirectory" or "Directory" or "FileName") of the path */
int
FileMonikerImpl_DecomposePath
(
LPCOLESTR
str
,
LPOLESTR
**
stringTable
);
/* Drag and drop */
void
OLEDD_UnInitialize
(
void
);
/* Apartment Functions */
...
...
dlls/ole32/ole2.c
View file @
63ea015c
...
...
@@ -147,7 +147,6 @@ extern void OLEClipbrd_Initialize(void);
* These are the prototypes of the utility methods used for OLE Drag n Drop
*/
static
void
OLEDD_Initialize
(
void
);
static
void
OLEDD_UnInitialize
(
void
);
static
DropTargetNode
*
OLEDD_FindDropTarget
(
HWND
hwndOfTarget
);
static
void
OLEDD_FreeDropTarget
(
DropTargetNode
*
);
...
...
@@ -254,11 +253,6 @@ void WINAPI OleUninitialize(void)
OLEClipbrd_UnInitialize
();
/*
* Drag and Drop
*/
OLEDD_UnInitialize
();
/*
* OLE shared menu
*/
OLEMenu_UnInitialize
();
...
...
@@ -1915,7 +1909,7 @@ static void OLEDD_FreeDropTarget(DropTargetNode *dropTargetInfo)
*
* Releases the OLE drag and drop data structures.
*/
static
void
OLEDD_UnInitialize
(
void
)
void
OLEDD_UnInitialize
(
void
)
{
/*
* Simply empty the list.
...
...
dlls/ole32/tests/dragdrop.c
View file @
63ea015c
...
...
@@ -136,11 +136,9 @@ START_TEST(dragdrop)
ok
(
droptarget_release_called
==
0
,
"DropTarget_Release shouldn't have been called
\n
"
);
OleUninitialize
();
todo_wine
ok
(
droptarget_release_called
==
0
,
"DropTarget_Release shouldn't have been called
\n
"
);
hr
=
RevokeDragDrop
(
GetDesktopWindow
());
todo_wine
ok_ole_success
(
hr
,
"RevokeDragDrop"
);
ok
(
droptarget_release_called
==
1
,
"DropTarget_Release should have been called once, not %d times
\n
"
,
droptarget_release_called
);
...
...
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