summaryrefslogtreecommitdiffstats
path: root/winsup/cygwin/cygheap.h
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/cygheap.h')
-rw-r--r--winsup/cygwin/cygheap.h9
1 files changed, 4 insertions, 5 deletions
diff --git a/winsup/cygwin/cygheap.h b/winsup/cygwin/cygheap.h
index 0c54bad1a..f33feb546 100644
--- a/winsup/cygwin/cygheap.h
+++ b/winsup/cygwin/cygheap.h
@@ -182,14 +182,13 @@ public:
void deimpersonate ()
{
if (issetuid ())
- {
- RevertToSelf ();
- ImpersonateLoggedOnUser (hProcImpToken);
- }
+ RevertToSelf ();
}
bool reimpersonate ()
{
- return ImpersonateLoggedOnUser (issetuid () ? token () : hProcImpToken);
+ if (issetuid ())
+ return ImpersonateLoggedOnUser (token ());
+ return true;
}
bool has_impersonation_tokens ()
{ return external_token != NO_IMPERSONATION