Module: wine Branch: master Commit: f170f5d8d3c06974ba8ad921e31cc10f9bd90111 URL: http://source.winehq.org/git/wine.git/?a=commit;h=f170f5d8d3c06974ba8ad921e3...
Author: Rob Shearman rob@codeweavers.com Date: Sun Apr 1 13:45:00 2007 +0100
advpack: Stop processing if there was an error registering an OCX.
---
dlls/advpack/install.c | 16 ++++++++++++---- 1 files changed, 12 insertions(+), 4 deletions(-)
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(HINF hinf, PCWSTR field, void *arg) 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;