diff options
Diffstat (limited to 'chrome/browser/ui/crypto_module_password_dialog_nss.cc')
-rw-r--r-- | chrome/browser/ui/crypto_module_password_dialog_nss.cc | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/chrome/browser/ui/crypto_module_password_dialog_nss.cc b/chrome/browser/ui/crypto_module_password_dialog_nss.cc index 20f62f7..a45913f 100644 --- a/chrome/browser/ui/crypto_module_password_dialog_nss.cc +++ b/chrome/browser/ui/crypto_module_password_dialog_nss.cc @@ -6,6 +6,7 @@ #include <pk11pub.h> +#include "base/bind.h" #include "base/logging.h" #include "content/browser/browser_thread.h" #include "net/base/crypto_module.h" @@ -31,7 +32,7 @@ class SlotUnlocker { SlotUnlocker(const net::CryptoModuleList& modules, browser::CryptoModulePasswordReason reason, const std::string& host, - Callback0::Type* callback); + const base::Closure& callback); void Start(); @@ -43,14 +44,14 @@ class SlotUnlocker { net::CryptoModuleList modules_; browser::CryptoModulePasswordReason reason_; std::string host_; - Callback0::Type* callback_; + base::Closure callback_; PRBool retry_; }; SlotUnlocker::SlotUnlocker(const net::CryptoModuleList& modules, browser::CryptoModulePasswordReason reason, const std::string& host, - Callback0::Type* callback) + const base::Closure& callback) : current_(0), modules_(modules), reason_(reason), @@ -84,7 +85,7 @@ void SlotUnlocker::Start() { retry_, reason_, host_, - NewCallback(this, &SlotUnlocker::GotPassword)); + base::Bind(&SlotUnlocker::GotPassword, base::Unretained(this))); return; } } @@ -124,7 +125,7 @@ void SlotUnlocker::GotPassword(const char* password) { void SlotUnlocker::Done() { DCHECK_EQ(current_, modules_.size()); - callback_->Run(); + callback_.Run(); delete this; } @@ -135,7 +136,7 @@ namespace browser { void UnlockSlotsIfNecessary(const net::CryptoModuleList& modules, browser::CryptoModulePasswordReason reason, const std::string& host, - Callback0::Type* callback) { + const base::Closure& callback) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); for (size_t i = 0; i < modules.size(); ++i) { if (ShouldShowDialog(modules[i].get())) { @@ -143,13 +144,13 @@ void UnlockSlotsIfNecessary(const net::CryptoModuleList& modules, return; } } - callback->Run(); + callback.Run(); } void UnlockCertSlotIfNecessary(net::X509Certificate* cert, browser::CryptoModulePasswordReason reason, const std::string& host, - Callback0::Type* callback) { + const base::Closure& callback) { net::CryptoModuleList modules; modules.push_back(net::CryptoModule::CreateFromHandle( cert->os_cert_handle()->slot)); |