]> granicus.if.org Git - php/commitdiff
test for bug 60591
authorXinchen Hui <laruence@php.net>
Thu, 22 Dec 2011 08:08:52 +0000 (08:08 +0000)
committerXinchen Hui <laruence@php.net>
Thu, 22 Dec 2011 08:08:52 +0000 (08:08 +0000)
sapi/cli/tests/php_cli_server_016.phpt [new file with mode: 0644]

diff --git a/sapi/cli/tests/php_cli_server_016.phpt b/sapi/cli/tests/php_cli_server_016.phpt
new file mode 100644 (file)
index 0000000..9732924
--- /dev/null
@@ -0,0 +1,46 @@
+--TEST--
+Bug #60591 (Memory leak when access a non-exists file)
+--DESCRIPTION--
+this is a indirect test for bug 50691, since mem leak is reproted in the server side
+and require php compiled with --enable-debug
+--SKIPIF--
+<?php
+include "skipif.inc"; 
+?>
+--FILE--
+<?php
+include "php_cli_server.inc";
+php_cli_server_start(<<<PHP
+if (preg_match('/\.(?:png|jpg|jpeg|gif)$/', \$_SERVER["REQUEST_URI"]))
+        return false; // serve the requested resource as-is.
+else {
+        echo "here";
+}
+PHP
+);
+
+list($host, $port) = explode(':', PHP_CLI_SERVER_ADDRESS);
+$port = intval($port)?:80;
+
+$fp = fsockopen($host, $port, $errno, $errstr, 0.5);
+if (!$fp) {
+  die("connect failed");
+}
+
+if(fwrite($fp, <<<HEADER
+POST /no-exists.jpg HTTP/1.1
+Host: {$host}
+
+
+HEADER
+)) {
+       while (!feof($fp)) {
+               echo fgets($fp);
+        break;
+       }
+}
+
+fclose($fp);
+?>
+--EXPECTF--
+HTTP/1.1 404 Not Found