Index: chrome/installer/setup/setup_util.cc |
diff --git a/chrome/installer/setup/setup_util.cc b/chrome/installer/setup/setup_util.cc |
index 611c53cb4c315331d7b3d9c90da2a614b24bd598..da46e4f4889e4b2e34060ec9b25c8cc4583b327b 100644 |
--- a/chrome/installer/setup/setup_util.cc |
+++ b/chrome/installer/setup/setup_util.cc |
@@ -452,11 +452,13 @@ bool IsUninstallSuccess(InstallStatus install_status) { |
ScopedTokenPrivilege::ScopedTokenPrivilege(const wchar_t* privilege_name) |
: is_enabled_(false) { |
+ HANDLE temp_handle; |
if (!::OpenProcessToken(::GetCurrentProcess(), |
TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, |
- token_.Receive())) { |
+ &temp_handle)) { |
return; |
} |
+ token_.Set(temp_handle); |
LUID privilege_luid; |
if (!::LookupPrivilegeValue(NULL, privilege_name, &privilege_luid)) { |