Jacek Caban : urlmon: Use error dialog for ERROR_INTERNET_SEC_CERT_REV_FAILED error if IHttpSecurity returns S_FALSE .
Alexandre Julliard
julliard at winehq.org
Mon Jun 11 15:08:07 CDT 2012
Module: wine
Branch: master
Commit: 9af95b32433f2227c3d62b70dc7740a5fa0b81cf
URL: http://source.winehq.org/git/wine.git/?a=commit;h=9af95b32433f2227c3d62b70dc7740a5fa0b81cf
Author: Jacek Caban <jacek at codeweavers.com>
Date: Mon Jun 11 16:14:45 2012 +0200
urlmon: Use error dialog for ERROR_INTERNET_SEC_CERT_REV_FAILED error if IHttpSecurity returns S_FALSE.
---
dlls/urlmon/http.c | 12 +++++++-----
1 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/dlls/urlmon/http.c b/dlls/urlmon/http.c
index d5f2b33..c67d36e 100644
--- a/dlls/urlmon/http.c
+++ b/dlls/urlmon/http.c
@@ -129,6 +129,8 @@ static HRESULT handle_http_error(HttpProtocol *This, DWORD error)
DWORD res;
HRESULT hres;
+ TRACE("(%p %u)\n", This, error);
+
switch(error) {
case ERROR_INTERNET_SEC_CERT_DATE_INVALID:
case ERROR_INTERNET_SEC_CERT_CN_INVALID:
@@ -162,6 +164,8 @@ static HRESULT handle_http_error(HttpProtocol *This, DWORD error)
hres = IHttpSecurity_OnSecurityProblem(http_security, error);
IHttpSecurity_Release(http_security);
+ TRACE("OnSecurityProblem returned %08x\n", hres);
+
if(hres != S_FALSE)
{
BOOL res = FALSE;
@@ -195,15 +199,13 @@ static HRESULT handle_http_error(HttpProtocol *This, DWORD error)
switch(error) {
case ERROR_INTERNET_SEC_CERT_REV_FAILED:
- if(hres == S_FALSE) {
- hres = internet_error_to_hres(error);
- }else {
+ if(hres != S_FALSE) {
/* Silently ignore the error. We will get more detailed error from wininet anyway. */
set_security_flag(This, SECURITY_FLAG_IGNORE_REVOCATION);
hres = RPC_E_RETRY;
+ break;
}
- break;
-
+ /* fallthrough */
default:
hres = IServiceProvider_QueryService(serv_prov, &IID_IWindowForBindingUI, &IID_IWindowForBindingUI, (void**)&wfb_ui);
if(SUCCEEDED(hres)) {
More information about the wine-cvs
mailing list