Fix CefRequestHandler::OnCertificateError callback trigger (issue #2019)

This commit is contained in:
Marshall Greenblatt 2017-01-17 12:49:23 -05:00
parent 4fdfc02858
commit 8b2618a72a
1 changed files with 4 additions and 5 deletions

View File

@ -199,7 +199,7 @@ class CefAllowCertificateErrorCallbackImpl : public CefRequestCallback {
static void RunNow(const CallbackType& callback, bool allow) {
CEF_REQUIRE_UIT();
callback.Run(allow ? content::CERTIFICATE_REQUEST_RESULT_TYPE_CONTINUE :
content::CERTIFICATE_REQUEST_RESULT_TYPE_DENY);
content::CERTIFICATE_REQUEST_RESULT_TYPE_CANCEL);
}
CallbackType callback_;
@ -750,11 +750,10 @@ void CefContentBrowserClient::AllowCertificateError(
bool proceed = handler->OnCertificateError(
browser.get(), static_cast<cef_errorcode_t>(cert_error),
request_url.spec(), cef_ssl_info, callbackImpl.get());
if (!proceed)
if (!proceed) {
callbackImpl->Disconnect();
callback.Run(proceed ? content::CERTIFICATE_REQUEST_RESULT_TYPE_CONTINUE :
content::CERTIFICATE_REQUEST_RESULT_TYPE_CANCEL);
callback.Run(content::CERTIFICATE_REQUEST_RESULT_TYPE_CANCEL);
}
}
void CefContentBrowserClient::SelectClientCertificate(