OSDN Git Service

* environ.cc (spenv::from_cygheap): Still need to take setuid into
authorcgf <cgf>
Sat, 29 Jun 2002 06:40:18 +0000 (06:40 +0000)
committercgf <cgf>
Sat, 29 Jun 2002 06:40:18 +0000 (06:40 +0000)
consideration.

winsup/cygwin/ChangeLog
winsup/cygwin/environ.cc

index 983b961..9800f1c 100644 (file)
@@ -1,3 +1,8 @@
+2002-06-29  Christopher Faylor  <cgf@redhat.com>
+
+       * environ.cc (spenv::from_cygheap): Still need to take setuid into
+       consideration.
+
 2002-06-28  Christopher Faylor  <cgf@redhat.com>
 
        * uinfo.cc (cygheap_user::env_logsrv): Return "almost_null" in case
@@ -13,7 +18,7 @@
        * cygheap.cc (cygheap_user::set_name): Reflect name "pwinname" name
        change.
        * environ.cc (getwinenveq): New function.
-       (spenv::from_cygheap): Change arguments.
+       (penv::from_cygheap): penv::from_cygheap): Change arguments.
        (spenv::retrieve): Ditto for call.  Use getwinenveq to retrieve info
        from environment.  Always return value from cygwin environment, if it
        exists.
index ae7268f..b86b6b8 100644 (file)
@@ -817,7 +817,7 @@ spenv::retrieve (bool no_envblock, const char *const envname)
   if (from_cygheap)
     {
       const char *p;
-      if (envname)
+      if (envname && !cygheap->user.issetuid ())
        {
          debug_printf ("duping existing value for '%s'", name);
          return cstrdup1 (envname);    /* Don't really care what it's set to