cvs: php-src(PHP_5_2) /ext/standard url.c
| From: | Antony Dovgal | Date: | Sat, 23 Sep 2006 11:58:58 +0000 |
| Subject: | cvs: php-src(PHP_5_2) /ext/standard url.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-40668@lists.php.net to get a copy of this message | ||
tony2001 Sat Sep 23 11:58:58 2006 UTC
Modified files: (Branch: PHP_5_2)
/php-src/ext/standard url.c
Log:
MFH: fix possible segfault in #38891
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/url.c?r1=1.86.2.5.2.2&r2=1.86.2.5.2.3&diff_format=u
Index: php-src/ext/standard/url.c
diff -u php-src/ext/standard/url.c:1.86.2.5.2.2 php-src/ext/standard/url.c:1.86.2.5.2.3
--- php-src/ext/standard/url.c:1.86.2.5.2.2 Thu Jun 29 14:31:56 2006
+++ php-src/ext/standard/url.c Sat Sep 23 11:58:58 2006
@@ -15,7 +15,7 @@
| Author: Jim Winstead <jimw@php.net> |
+----------------------------------------------------------------------+
*/
-/* $Id: url.c,v 1.86.2.5.2.2 2006/06/29 14:31:56 bjori Exp $ */
+/* $Id: url.c,v 1.86.2.5.2.3 2006/09/23 11:58:58 tony2001 Exp $ */
#include <stdlib.h>
#include <string.h>
@@ -678,6 +678,10 @@
zend_hash_internal_pointer_reset_ex(HASH_OF(stream->wrapperdata), &pos);
while (zend_hash_get_current_data_ex(HASH_OF(stream->wrapperdata), (void**)&hdr, &pos)
!= FAILURE) {
+ if (!hdr || Z_TYPE_PP(hdr) != IS_STRING) {
+ zend_hash_move_forward_ex(HASH_OF(stream->wrapperdata), &pos);
+ continue;
+ }
if (!format) {
no_name_header:
add_next_index_stringl(return_value, Z_STRVAL_PP(hdr), Z_STRLEN_PP(hdr), 1);