Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
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-winehq
Commits
ead00327
Commit
ead00327
authored
Jan 06, 2006
by
Mike McCormack
Committed by
Alexandre Julliard
Jan 06, 2006
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
msi: Unload riched20 after its window is destroyed.
parent
abbe4b6d
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
9 additions
and
4 deletions
+9
-4
dialog.c
dlls/msi/dialog.c
+9
-4
No files found.
dlls/msi/dialog.c
View file @
ead00327
...
...
@@ -59,6 +59,7 @@ struct msi_control_tag
HBITMAP
hBitmap
;
HICON
hIcon
;
LPWSTR
tabnext
;
HMODULE
hDll
;
WCHAR
name
[
1
];
};
...
...
@@ -328,6 +329,7 @@ static msi_control *msi_dialog_create_window( msi_dialog *dialog,
control
->
value
=
NULL
;
control
->
hBitmap
=
NULL
;
control
->
hIcon
=
NULL
;
control
->
hDll
=
NULL
;
control
->
tabnext
=
strdupW
(
MSI_RecordGetString
(
rec
,
11
)
);
x
=
MSI_RecordGetInteger
(
rec
,
4
);
...
...
@@ -700,7 +702,6 @@ struct msi_scrolltext_info
msi_dialog
*
dialog
;
msi_control
*
control
;
WNDPROC
oldproc
;
HMODULE
hRichedit
;
};
static
LRESULT
WINAPI
...
...
@@ -718,7 +719,6 @@ MSIScrollText_WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
switch
(
msg
)
{
case
WM_NCDESTROY
:
FreeLibrary
(
info
->
hRichedit
);
msi_free
(
info
);
RemovePropW
(
hWnd
,
szButtonData
);
break
;
...
...
@@ -778,24 +778,27 @@ static UINT msi_dialog_scrolltext_control( msi_dialog *dialog, MSIRECORD *rec )
};
struct
msi_scrolltext_info
*
info
;
msi_control
*
control
;
HMODULE
hRichedit
;
DWORD
style
;
info
=
msi_alloc
(
sizeof
*
info
);
if
(
!
info
)
return
ERROR_FUNCTION_FAILED
;
info
->
hRichedit
=
LoadLibraryA
(
"riched20"
);
hRichedit
=
LoadLibraryA
(
"riched20"
);
style
=
WS_BORDER
|
ES_MULTILINE
|
WS_VSCROLL
|
ES_READONLY
|
ES_AUTOVSCROLL
|
WS_TABSTOP
;
control
=
msi_dialog_add_control
(
dialog
,
rec
,
szRichEdit20W
,
style
);
if
(
!
control
)
{
FreeLibrary
(
info
->
hRichedit
);
FreeLibrary
(
hRichedit
);
msi_free
(
info
);
return
ERROR_FUNCTION_FAILED
;
}
control
->
hDll
=
hRichedit
;
info
->
dialog
=
dialog
;
info
->
control
=
control
;
...
...
@@ -2212,6 +2215,8 @@ void msi_dialog_destroy( msi_dialog *dialog )
DestroyIcon
(
t
->
hIcon
);
msi_free
(
t
->
tabnext
);
msi_free
(
t
);
if
(
t
->
hDll
)
FreeLibrary
(
t
->
hDll
);
}
/* destroy the list of fonts */
...
...
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