dmitry Tue Jan 24 08:54:30 2006 UTC
Modified files: (Branch: PHP_5_0)
/php-src/ext/com_dotnet com_handlers.c com_iterator.c com_misc.c
php_com_dotnet_internal.h
Log:
MFH: Fixed crash on destroying COM object
http://cvs.php.net/viewcvs.cgi/php-src/ext/com_dotnet/com_handlers.c?r1=1.22.2.5&r2=1.22.2.6&diff_format=u
Index: php-src/ext/com_dotnet/com_handlers.c
diff -u php-src/ext/com_dotnet/com_handlers.c:1.22.2.5
php-src/ext/com_dotnet/com_handlers.c:1.22.2.6
--- php-src/ext/com_dotnet/com_handlers.c:1.22.2.5 Tue Apr 19 05:57:21 2005
+++ php-src/ext/com_dotnet/com_handlers.c Tue Jan 24 08:54:29 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: com_handlers.c,v 1.22.2.5 2005/04/19 05:57:21 wez Exp $ */
+/* $Id: com_handlers.c,v 1.22.2.6 2006/01/24 08:54:29 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -673,6 +673,7 @@
VariantInit(&obj->v);
obj->code_page = CP_ACP;
obj->ce = ce;
+ obj->zo.ce = ce;
retval.handle = zend_objects_store_put(obj, NULL,
php_com_object_free_storage, php_com_object_clone TSRMLS_CC);
retval.handlers = &php_com_object_handlers;
http://cvs.php.net/viewcvs.cgi/php-src/ext/com_dotnet/com_iterator.c?r1=1.7&r2=1.7.2.1&diff_format=u
Index: php-src/ext/com_dotnet/com_iterator.c
diff -u php-src/ext/com_dotnet/com_iterator.c:1.7
php-src/ext/com_dotnet/com_iterator.c:1.7.2.1
--- php-src/ext/com_dotnet/com_iterator.c:1.7 Mon Mar 8 21:17:39 2004
+++ php-src/ext/com_dotnet/com_iterator.c Tue Jan 24 08:54:29 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: com_iterator.c,v 1.7 2004/03/08 21:17:39 helly Exp $ */
+/* $Id: com_iterator.c,v 1.7.2.1 2006/01/24 08:54:29 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -232,7 +232,7 @@
if (I) {
VariantClear(&I->safe_array);
VariantClear(&I->v);
- free(I);
+ efree(I);
}
return NULL;
}
http://cvs.php.net/viewcvs.cgi/php-src/ext/com_dotnet/com_misc.c?r1=1.7&r2=1.7.2.1&diff_format=u
Index: php-src/ext/com_dotnet/com_misc.c
diff -u php-src/ext/com_dotnet/com_misc.c:1.7
php-src/ext/com_dotnet/com_misc.c:1.7.2.1
--- php-src/ext/com_dotnet/com_misc.c:1.7 Sun May 9 14:28:19 2004
+++ php-src/ext/com_dotnet/com_misc.c Tue Jan 24 08:54:29 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: com_misc.c,v 1.7 2004/05/09 14:28:19 wez Exp $ */
+/* $Id: com_misc.c,v 1.7.2.1 2006/01/24 08:54:29 dmitry Exp $ */
#ifdef HAVE_CONFIG_H
#include "config.h"
@@ -51,6 +51,7 @@
memset(obj, 0, sizeof(*obj));
obj->code_page = codepage;
obj->ce = php_com_variant_class_entry;
+ obj->zo.ce = php_com_variant_class_entry;
VariantInit(&obj->v);
V_VT(&obj->v) = VT_DISPATCH;
@@ -73,6 +74,7 @@
memset(obj, 0, sizeof(*obj));
obj->code_page = codepage;
obj->ce = php_com_variant_class_entry;
+ obj->zo.ce = php_com_variant_class_entry;
VariantInit(&obj->v);
VariantCopyInd(&obj->v, v);
http://cvs.php.net/viewcvs.cgi/php-src/ext/com_dotnet/php_com_dotnet_internal.h?r1=1.12.2.1&r2=1.12.2.2&diff_format=u
Index: php-src/ext/com_dotnet/php_com_dotnet_internal.h
diff -u php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.12.2.1
php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.12.2.2
--- php-src/ext/com_dotnet/php_com_dotnet_internal.h:1.12.2.1 Tue Apr 19
05:57:21 2005
+++ php-src/ext/com_dotnet/php_com_dotnet_internal.h Tue Jan 24 08:54:29 2006
@@ -16,7 +16,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: php_com_dotnet_internal.h,v 1.12.2.1 2005/04/19 05:57:21 wez Exp $ */
+/* $Id: php_com_dotnet_internal.h,v 1.12.2.2 2006/01/24 08:54:29 dmitry Exp $
*/
#ifndef PHP_COM_DOTNET_INTERNAL_H
#define PHP_COM_DOTNET_INTERNAL_H
@@ -33,6 +33,8 @@
#undef php_win_err
typedef struct _php_com_dotnet_object {
+ zend_object zo;
+
VARIANT v;
ITypeInfo *typeinfo;
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php