Browse Source
MFH:
MFH:
- Merged fix from SF project (Import Jeff Lawsons patches for XML datetime bug fixes) Fixed bugs: #45226 (xmlrpc_set_type() segfaults with valid ISO8601 date string) #18916 (xmlrpc_set_type() "not working")PHP-5.2.1RC1
3 changed files with 101 additions and 11 deletions
-
38ext/xmlrpc/libxmlrpc/xmlrpc.c
-
21ext/xmlrpc/tests/bug18916.phpt
-
53ext/xmlrpc/tests/bug45226.phpt
@ -0,0 +1,21 @@ |
|||
--TEST-- |
|||
Bug #18916 (xmlrpc_set_type() not working) |
|||
--INI-- |
|||
date.timezone="America/Sao_Paulo" |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$params = date("Ymd\TH:i:s", time()); |
|||
xmlrpc_set_type($params, 'datetime'); |
|||
echo xmlrpc_encode($params); |
|||
|
|||
?> |
|||
--EXPECTF-- |
|||
<?xml version="1.0" encoding="utf-8"?> |
|||
<params> |
|||
<param> |
|||
<value> |
|||
<dateTime.iso8601>%dT%d:%d:%d</dateTime.iso8601> |
|||
</value> |
|||
</param> |
|||
</params> |
|||
@ -0,0 +1,53 @@ |
|||
--TEST-- |
|||
Bug #45226 (xmlrpc_set_type() segfaults with valid ISO8601 date string) |
|||
--INI-- |
|||
date.timezone="America/Sao_Paulo" |
|||
--FILE-- |
|||
<?php |
|||
|
|||
$d = date(DATE_ISO8601); |
|||
xmlrpc_set_type($d, 'datetime'); |
|||
echo xmlrpc_encode_request('method.call', array('date' => $d)); |
|||
|
|||
$d = '2008-01-01 20:00:00'; |
|||
xmlrpc_set_type($d, 'datetime'); |
|||
echo xmlrpc_encode_request('method.call', array('date' => $d)); |
|||
|
|||
?> |
|||
--EXPECTF-- |
|||
<?xml version="1.0" encoding="iso-8859-1"?> |
|||
<methodCall> |
|||
<methodName>method.call</methodName> |
|||
<params> |
|||
<param> |
|||
<value> |
|||
<struct> |
|||
<member> |
|||
<name>date</name> |
|||
<value> |
|||
<dateTime.iso8601>%d-%d-%dT%d:%d:%d%s%d</dateTime.iso8601> |
|||
</value> |
|||
</member> |
|||
</struct> |
|||
</value> |
|||
</param> |
|||
</params> |
|||
</methodCall> |
|||
<?xml version="1.0" encoding="iso-8859-1"?> |
|||
<methodCall> |
|||
<methodName>method.call</methodName> |
|||
<params> |
|||
<param> |
|||
<value> |
|||
<struct> |
|||
<member> |
|||
<name>date</name> |
|||
<value> |
|||
<dateTime.iso8601>%d-%d-%d %d:%d:%d</dateTime.iso8601> |
|||
</value> |
|||
</member> |
|||
</struct> |
|||
</value> |
|||
</param> |
|||
</params> |
|||
</methodCall> |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue