|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? ??? 2019, PHP 7.2.24
+- Core:
+ . Fixed bug #78535 (auto_detect_line_endings value not parsed as bool).
+ (bugreportuser)
+
- Exif:
. Fixed bug #78442 ('Illegal component' on exif_read_data since PHP7)
(Kalle)
STD_PHP_INI_ENTRY("user_agent", NULL, PHP_INI_ALL, OnUpdateString, user_agent, php_file_globals, file_globals)
STD_PHP_INI_ENTRY("from", NULL, PHP_INI_ALL, OnUpdateString, from_address, php_file_globals, file_globals)
STD_PHP_INI_ENTRY("default_socket_timeout", "60", PHP_INI_ALL, OnUpdateLong, default_socket_timeout, php_file_globals, file_globals)
- STD_PHP_INI_ENTRY("auto_detect_line_endings", "0", PHP_INI_ALL, OnUpdateLong, auto_detect_line_endings, php_file_globals, file_globals)
+ STD_PHP_INI_ENTRY("auto_detect_line_endings", "0", PHP_INI_ALL, OnUpdateBool, auto_detect_line_endings, php_file_globals, file_globals)
PHP_INI_END()
PHP_MINIT_FUNCTION(file)
typedef struct {
int pclose_ret;
size_t def_chunk_size;
- zend_long auto_detect_line_endings;
+ zend_bool auto_detect_line_endings;
zend_long default_socket_timeout;
char *user_agent; /* for the http wrapper */
char *from_address; /* for the ftp and http wrappers */
--- /dev/null
+--TEST--
+auto_detect_line_endings --INI-- bool
+--INI--
+auto_detect_line_endings=on
+--STDIN--
+fooBar1\rfooBar2\rfooBar3
+--FILE--
+<?php
+
+var_dump(ini_get("auto_detect_line_endings"));
+
+var_dump(fgets(STDIN));
+var_dump(fgets(STDIN));
+var_dump(fgets(STDIN));
+
+echo "Done\n";
+?>
+--EXPECTF--
+string(1) "1"
+string(8) "fooBar1\r"
+string(8) "fooBar2\r"
+string(8) "fooBar3
+"
+Done
--- /dev/null
+--TEST--
+ini_set auto_detect_line_endings bool
+--FILE--
+<?php
+
+ini_set("auto_detect_line_endings", "on");
+var_dump(ini_get("auto_detect_line_endings"));
+
+$filePath = __DIR__ . DIRECTORY_SEPARATOR . "auto_detect_line_endings_2.txt";
+file_put_contents($filePath, "fooBar1\rfooBar2\rfooBar3");
+
+$stdin = fopen($filePath, "r");
+var_dump(fgets($stdin));
+var_dump(fgets($stdin));
+var_dump(fgets($stdin));
+
+echo "Done\n";
+?>
+--EXPECTF--
+string(2) "on"
+string(8) "fooBar1\r"
+string(8) "fooBar2\r"
+string(7) "fooBar3"
+Done
+--CLEAN--
+<?php
+unlink(__DIR__ . DIRECTORY_SEPARATOR . "auto_detect_line_endings_2.txt");
+?>