#19150 [Sus->Csd]: Overloaded COM Property Set Leaks Memory
| From: | phanto@php.net | Date: | Thu, 30 Jan 2003 02:06:21 +0000 |
| Subject: | #19150 [Sus->Csd]: Overloaded COM Property Set Leaks Memory | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-31647@lists.php.net to get a copy of this message | ||
ID: 19150
Updated by: phanto@php.net
Reported By: msisolak@yahoo.com
-Status: Suspended
+Status: Closed
Bug Type: COM related
Operating System: Windows 2000
PHP Version: 4.2.2, 4.3.0-dev
New Comment:
This bug has been fixed in CVS.
In case this was a PHP problem, snapshots of the sources are packaged
every three hours; this change will be in the next snapshot. You can
grab the snapshot at http://snaps.php.net/.
In case this was a documentation problem, the fix will show up soon at
http://www.php.net/manual/.
In case this was a PHP.net website problem, the change will show
up on the PHP.net site and on the mirror sites in short time.
Thank you for the report, and for helping us make PHP better.
Previous Comments:
------------------------------------------------------------------------
[2003-01-18 16:09:48] phanto@php.net
suspending
------------------------------------------------------------------------
[2003-01-18 16:09:20] phanto@php.net
heading for php5 i won't spend any more time on fixing memleaks in php4
code
------------------------------------------------------------------------
[2002-08-28 12:33:50] kalowsky@php.net
updating version
------------------------------------------------------------------------
[2002-08-28 10:27:20] msisolak@yahoo.com
I did confirm that the bug exists in the current HEAD branch, but was
unable to confirm the fix as the com_invoke call would fail.
------------------------------------------------------------------------
[2002-08-28 10:25:41] msisolak@yahoo.com
If a COM property set is called on an overloaded object that was
created by a COM method call, memory leaks (as identified by an ever
growing DLLHOST memory size under the ISAPI filter). This does not
happen if you use the functional COM interface.
This will leak:
$xml = new COM("MSXML.DOMDocument");
$element = $xml->createElement("test");
$element->text = str_repeat("this is a text string!", 100);
$element->Release();
$xml->Release();
but this doesn't:
$xml = new COM("MSXML.DOMDocument");
$element = com_invoke($xml, "createElement", "test");
com_set($element, "text", str_repeat("this is a text string!", 100));
com_release($element);
$xml->Release();
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=19150&edit=1