Bug #76976 [Fbk->Opn]: xmlrpc_decode is creating a memory leak
| From: | cmb@php.net | Date: | Sun, 07 Oct 2018 16:27:18 +0000 |
| Subject: | Bug #76976 [Fbk->Opn]: xmlrpc_decode is creating a memory leak | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-217460@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=76976&edit=1
ID: 76976
Updated by: cmb@php.net
Reported by: marek dot salzinger at gmail dot com
Summary: xmlrpc_decode is creating a memory leak
-Status: Feedback
+Status: Open
Type: Bug
Package: XML related
Operating System: Windows 10
PHP Version: 7.2.10
Assigned To: cmb
Block user comment: N
Private report: N
New Comment:
> i will give you a example output, this may not create the memory
> leak.
Hmm, you're giving us not much. Anyhow, I've checked this XML,
and I can't detect a memory leak.
Previous Comments:
------------------------------------------------------------------------
[2018-10-05 14:26:01] marek dot salzinger at gmail dot com
Its a multi dimensional array. It can have up to 600~1000 Entries.
The total length of one return value is 10933653.
The structure is:
array["type"]["group"] = array(
'callId' => value,
'callStepId' => value,
'callLegUUID' => value,
'agentId' => value,
'cdrAccountId' => value,
'callerAccountId' => value,
'calledAccountId' => value,
'calledCallerId' => value,
'starttime' => value,
'ringingtime' => value,
'linktime' => value,
'callresultTime' => value,
'callResult' => value,
'callResultCausedBy' => value,
'lineId' => value,
'lineName' => value,
'answeredElsewhere' => value,
'incoming' => value,
'answered' => value,
'hasVoicemail' => value,
'hasMonitor' => value,
'callbackNumberExtern' => value,
'groupname' => value
);
Its formated in xml so the output is a bit of a mess. i will give you a example output, this may not
create the memory leak.
<?xml version="1.0" encoding="UTF-8"?>
<methodCall>
<methodName>Queue.getHistoryData</methodName>
<params>
<param>
<value>
<struct>
<member>
<name>queueName</name>
<value>
<string>testIq</string>
</value>
</member>
<member>
<name>from</name>
<value>
<string>20150701T12:59:05</string>
</value>
</member>
<member>
<name>to</name>
<value>
<string>20160701T12:59:05</string>
</value>
</member>
</struct>
</value>
</param>
</params>
</methodCall>
------------------------------------------------------------------------
[2018-10-05 14:09:10] cmb@php.net
What is the return value of
curl_exec($ch)?
------------------------------------------------------------------------
[2018-10-05 12:41:33] marek dot salzinger at gmail dot com
Description:
------------
---
From manual page: http://www.php.net/function.xmlrpc-decode
---
The function xmlrpc_decode is creating a memory leak on Windows. I am using PHP 7.2.9.
I tried my code on Ubuntu and there was no memoryleak involved.
Test script:
---------------
//pseudo:
while( condition ) {
$ch = curl_init( $xml_rpc_url . $xml_rpc_login );
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_ENCODING ,"UTF-8");
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_request_query);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$xml_response_aa[$imported_data_type][$group_name] =
xmlrpc_decode(utf8_encode(curl_exec($ch)));
curl_close($ch);
unset($ch);
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=76976&edit=1