diff options
Diffstat (limited to 'winsup/cygwin/dtable.cc')
-rw-r--r-- | winsup/cygwin/dtable.cc | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc index 71bf25a17..241528a3d 100644 --- a/winsup/cygwin/dtable.cc +++ b/winsup/cygwin/dtable.cc @@ -633,14 +633,14 @@ dtable::vfork_child_dup () goto out; } - /* Restore impersonation */ - if (cygheap->user.impersonated && cygheap->user.token != INVALID_HANDLE_VALUE) - ImpersonateLoggedOnUser (cygheap->user.token); - fds_on_hold = fds; fds = newtable; out: + /* Restore impersonation */ + if (cygheap->user.impersonated && cygheap->user.token != INVALID_HANDLE_VALUE) + ImpersonateLoggedOnUser (cygheap->user.token); + ReleaseResourceLock (LOCK_FD_LIST, WRITE_LOCK | READ_LOCK, "dup"); return 1; } |