summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/POSIX/POSIX.xs10
1 files changed, 10 insertions, 0 deletions
diff --git a/ext/POSIX/POSIX.xs b/ext/POSIX/POSIX.xs
index 049c1b6c63..3b3903828a 100644
--- a/ext/POSIX/POSIX.xs
+++ b/ext/POSIX/POSIX.xs
@@ -1827,10 +1827,20 @@ pause()
SysRet
setgid(gid)
Gid_t gid
+ CLEANUP:
+ if (RETVAL >= 0) {
+ PL_gid = getgid();
+ PL_egid = getegid();
+ }
SysRet
setuid(uid)
Uid_t uid
+ CLEANUP:
+ if (RETVAL >= 0) {
+ PL_uid = getuid();
+ PL_euid = geteuid();
+ }
SysRetLong
sysconf(name)