cvs: php-src /ext/fileinfo fileinfo.c
| From: | Scott MacVicar | Date: | Mon, 15 Sep 2008 22:15:17 +0000 |
| Subject: | cvs: php-src /ext/fileinfo fileinfo.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-53168@lists.php.net to get a copy of this message | ||
scottmac Mon Sep 15 22:15:17 2008 UTC
Modified files:
/php-src/ext/fileinfo fileinfo.c
Log:
MFB Fixed bug #46086 (Segfault when accessing fileinfo class property)
http://cvs.php.net/viewvc.cgi/php-src/ext/fileinfo/fileinfo.c?r1=1.33&r2=1.34&diff_format=u
Index: php-src/ext/fileinfo/fileinfo.c
diff -u php-src/ext/fileinfo/fileinfo.c:1.33 php-src/ext/fileinfo/fileinfo.c:1.34
--- php-src/ext/fileinfo/fileinfo.c:1.33 Sat Sep 13 21:32:15 2008
+++ php-src/ext/fileinfo/fileinfo.c Mon Sep 15 22:15:16 2008
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: fileinfo.c,v 1.33 2008/09/13 21:32:15 tony2001 Exp $ */
+/* $Id: fileinfo.c,v 1.34 2008/09/15 22:15:16 scottmac Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -99,16 +99,13 @@
{
zend_object_value retval;
struct finfo_object *intern;
+ zval *tmp;
+
+ intern = emalloc(sizeof(struct finfo_object));
+
+ zend_object_std_init(&intern->zo, class_type TSRMLS_CC);
+ zend_hash_copy(intern->zo.properties, &class_type->default_properties,
(copy_ctor_func_t) zval_add_ref,(void *) &tmp, sizeof(zval *));
- intern = ecalloc(1, sizeof(struct finfo_object));
- intern->zo.ce = class_type;
- intern->zo.properties = NULL;
-#if ZEND_MODULE_API_NO >= 20050922
- intern->zo.guards = NULL;
-#else
- intern->zo.in_get = 0;
- intern->zo.in_set = 0;
-#endif
intern->ptr = NULL;
retval.handle = zend_objects_store_put(intern, finfo_objects_dtor, NULL, NULL TSRMLS_CC);