summaryrefslogtreecommitdiffstats
path: root/generic/tclEnv.c
diff options
context:
space:
mode:
authordavygrvy <davygrvy@pobox.com>2003-05-14 06:17:49 (GMT)
committerdavygrvy <davygrvy@pobox.com>2003-05-14 06:17:49 (GMT)
commit86e16438b5c6b878894e01558c4d837e268a540c (patch)
tree757d80bb9bc2fc4cee430cc955ca89b8a3a40a16 /generic/tclEnv.c
parent73ac9f46435a4e3b9898858b19027b5d3d452574 (diff)
downloadtcl-86e16438b5c6b878894e01558c4d837e268a540c.zip
tcl-86e16438b5c6b878894e01558c4d837e268a540c.tar.gz
tcl-86e16438b5c6b878894e01558c4d837e268a540c.tar.bz2
Another putenv() copy behavior problem repaired when compiling on windows
and using microsoft's runtime. [Bug 736421]
Diffstat (limited to 'generic/tclEnv.c')
-rw-r--r--generic/tclEnv.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/generic/tclEnv.c b/generic/tclEnv.c
index 1d6e66f..f814164 100644
--- a/generic/tclEnv.c
+++ b/generic/tclEnv.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclEnv.c,v 1.20 2003/01/14 02:06:11 mdejong Exp $
+ * RCS: @(#) $Id: tclEnv.c,v 1.21 2003/05/14 06:17:49 davygrvy Exp $
*/
#include "tclInt.h"
@@ -429,6 +429,11 @@ TclUnsetEnv(name)
if (environ[index] == string) {
ReplaceString(oldValue, string);
+#ifdef HAVE_PUTENV_THAT_COPIES
+ } else {
+ /* This putenv() copies instead of taking ownership */
+ ckfree(string);
+#endif
}
#else
for (envPtr = environ+index+1; ; envPtr++) {