diff options
| author | Pierre Joye <pajoye@php.net> | 2010-01-24 13:49:47 +0000 |
|---|---|---|
| committer | Pierre Joye <pajoye@php.net> | 2010-01-24 13:49:47 +0000 |
| commit | e4065db32bc2a57c3c6803ea9495152ab2d854d0 (patch) | |
| tree | bf0d52638753399c93ca91f9e3bc581ed5138461 /ext/standard | |
| parent | f386e268cdc666e9ed40f432845ed976d08f2d52 (diff) | |
| download | php-git-e4065db32bc2a57c3c6803ea9495152ab2d854d0.tar.gz | |
- #50690, putenv does assign value when their length is one char
Diffstat (limited to 'ext/standard')
| -rw-r--r-- | ext/standard/basic_functions.c | 2 | ||||
| -rw-r--r-- | ext/standard/tests/general_functions/bug50690.phpt | 14 |
2 files changed, 15 insertions, 1 deletions
diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 33ca9b7e1c..38c608f670 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -4056,7 +4056,7 @@ PHP_FUNCTION(putenv) pe.key_len = strlen(pe.key); #ifdef PHP_WIN32 if (equals) { - if (pe.key_len < setting_len - 2) { + if (pe.key_len < setting_len - 1) { value = p + 1; } else { /* empty string*/ diff --git a/ext/standard/tests/general_functions/bug50690.phpt b/ext/standard/tests/general_functions/bug50690.phpt new file mode 100644 index 0000000000..4d9f0dc5ee --- /dev/null +++ b/ext/standard/tests/general_functions/bug50690.phpt @@ -0,0 +1,14 @@ +--TEST--
+Bug #23650 (putenv() does not assign values when the value is one character)
+--FILE--
+<?php
+putenv("foo=ab");
+putenv("bar=c");
+var_dump(getenv("foo"));
+var_dump(getenv("bar"));
+var_dump(getenv("thisvardoesnotexist"));
+?>
+--EXPECT--
+string(2) "ab"
+string(1) "c"
+bool(false)
|
