cvs: php-src /ext/standard file.c
| From: | Antony Dovgal | Date: | Fri, 18 May 2007 20:34:07 +0000 |
| Subject: | cvs: php-src /ext/standard file.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-44370@lists.php.net to get a copy of this message | ||
tony2001 Fri May 18 20:34:07 2007 UTC
Modified files:
/php-src/ext/standard file.c
Log:
fix leak and check for < 0 only of the 5th arg was passed
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/file.c?r1=1.488&r2=1.489&diff_format=u
Index: php-src/ext/standard/file.c
diff -u php-src/ext/standard/file.c:1.488 php-src/ext/standard/file.c:1.489
--- php-src/ext/standard/file.c:1.488 Fri May 18 12:05:55 2007
+++ php-src/ext/standard/file.c Fri May 18 20:34:07 2007
@@ -21,7 +21,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: file.c,v 1.488 2007/05/18 12:05:55 tony2001 Exp $ */
+/* $Id: file.c,v 1.489 2007/05/18 20:34:07 tony2001 Exp $ */
/* Synced with php 3.0 revision 1.218 1999-06-16 [ssb] */
@@ -554,6 +554,11 @@
return;
}
+ if (ZEND_NUM_ARGS() == 5 && maxlen < 0) {
+ php_error_docref(NULL TSRMLS_CC, E_WARNING, "length must be greater than or equal to
zero");
+ RETURN_FALSE;
+ }
+
context = php_stream_context_from_zval(zcontext, 0);
if (php_stream_path_param_encode(ppfilename, &filename, &filename_len, REPORT_ERRORS,
context) == FAILURE) {
RETURN_FALSE;
@@ -566,11 +571,6 @@
RETURN_FALSE;
}
- if (maxlen < 0) {
- php_error_docref(NULL TSRMLS_CC, E_WARNING, "Length must be greater than or equal to
zero");
- RETURN_FALSE;
- }
-
if (offset > 0 && php_stream_seek(stream, offset, SEEK_SET) < 0) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to seek to position %ld in the
stream", offset);
php_stream_close(stream);