advpack: Stop processing if there was an error registering an OCX.
Robert Shearman
rob at codeweavers.com
Sun Apr 1 07:45:00 CDT 2007
---
dlls/advpack/install.c | 16 ++++++++++++----
1 files changed, 12 insertions(+), 4 deletions(-)
-------------- next part --------------
diff --git a/dlls/advpack/install.c b/dlls/advpack/install.c
index ed0660b..3f1b1dd 100644
--- a/dlls/advpack/install.c
+++ b/dlls/advpack/install.c
@@ -160,13 +160,21 @@ static HRESULT register_ocxs_callback(HI
continue;
hm = LoadLibraryExW(buffer, NULL, LOAD_WITH_ALTERED_SEARCH_PATH);
- if (!hm)
- continue;
+ if (hm)
+ {
+ if (do_ocx_reg(hm, TRUE))
+ hr = E_FAIL;
- if (do_ocx_reg(hm, TRUE))
+ FreeLibrary(hm);
+ }
+ else
hr = E_FAIL;
- FreeLibrary(hm);
+ if (FAILED(hr))
+ {
+ /* FIXME: display a message box */
+ break;
+ }
}
return hr;
More information about the wine-patches
mailing list