urlmon: Use error dialog for ERROR_INTERNET_SEC_CERT_REV_FAILED error if IHttpSecurity returns S_FALSE.
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 @@
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 @@
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 @@
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)) {