[Python-checkins] CVS: python/dist/src/Lib os.py,1.47,1.48
Guido van Rossum
gvanrossum@users.sourceforge.net
Thu, 18 Oct 2001 18:32:01 -0700
Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv3916/Lib
Modified Files:
os.py
Log Message:
SF patch #460805 by Chris Gonnerman: Support for unsetenv()
This adds unsetenv to posix, and uses it in the __delitem__ method of
os.environ.
(XXX Should we change the preferred name for putenv to setenv, for
consistency?)
Index: os.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/os.py,v
retrieving revision 1.47
retrieving revision 1.48
diff -C2 -d -r1.47 -r1.48
*** os.py 2001/03/07 09:05:44 1.47
--- os.py 2001/10/19 01:31:59 1.48
***************
*** 355,358 ****
--- 355,366 ----
import UserDict
+ # Fake unsetenv() for Windows
+ # not sure about os2 and dos here but
+ # I'm guessing they are the same.
+
+ if name in ('os2', 'nt', 'dos'):
+ def unsetenv(key):
+ putenv(key, "")
+
if name == "riscos":
# On RISC OS, all env access goes through getenv and putenv
***************
*** 371,376 ****
def __getitem__(self, key):
return self.data[key.upper()]
! def __delitem__(self, key):
! del self.data[key.upper()]
def has_key(self, key):
return self.data.has_key(key.upper())
--- 379,391 ----
def __getitem__(self, key):
return self.data[key.upper()]
! try:
! unsetenv
! except NameError:
! def __delitem__(self, key):
! del self.data[key.upper()]
! else:
! def __delitem__(self, key):
! unsetenv(key)
! del self.data[key.upper()]
def has_key(self, key):
return self.data.has_key(key.upper())
***************
*** 392,395 ****
--- 407,419 ----
for k, v in dict.items():
self[k] = v
+ try:
+ unsetenv
+ except NameError:
+ pass
+ else:
+ def __delitem__(self, key):
+ unsetenv(key)
+ del self.data[key]
+
environ = _Environ(environ)