Index: remoting/host/win/chromoting_module.cc |
diff --git a/remoting/host/win/chromoting_module.cc b/remoting/host/win/chromoting_module.cc |
index 724ce7eb58ea759e2db6e035a21e173482131724..630c6c254159ca8a71bbb64636c4f55a02eb6857 100644 |
--- a/remoting/host/win/chromoting_module.cc |
+++ b/remoting/host/win/chromoting_module.cc |
@@ -42,12 +42,13 @@ base::LazyInstance<scoped_refptr<AutoThreadTaskRunner> > g_module_task_runner = |
// Lowers the process integrity level such that it does not exceed |max_level|. |
// |max_level| is expected to be one of SECURITY_MANDATORY_XXX constants. |
bool LowerProcessIntegrityLevel(DWORD max_level) { |
- base::win::ScopedHandle token; |
+ HANDLE temp_handle; |
if (!OpenProcessToken(GetCurrentProcess(), TOKEN_QUERY | TOKEN_WRITE, |
- token.Receive())) { |
+ &temp_handle)) { |
PLOG(ERROR) << "OpenProcessToken() failed"; |
return false; |
} |
+ base::win::ScopedHandle token(temp_handle); |
TypedBuffer<TOKEN_MANDATORY_LABEL> mandatory_label; |
DWORD length = 0; |