bug45226.phpt 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. --TEST--
  2. Bug #45226 (xmlrpc_set_type() segfaults with valid ISO8601 date string)
  3. --INI--
  4. date.timezone="America/Sao_Paulo"
  5. --SKIPIF--
  6. <?php if (!extension_loaded("xmlrpc")) print "skip"; ?>
  7. --FILE--
  8. <?php
  9. $d = date(DATE_ISO8601);
  10. xmlrpc_set_type($d, 'datetime');
  11. echo xmlrpc_encode_request('method.call', array('date' => $d));
  12. $d = '2008-01-01 20:00:00';
  13. xmlrpc_set_type($d, 'datetime');
  14. echo xmlrpc_encode_request('method.call', array('date' => $d));
  15. ?>
  16. --EXPECTF--
  17. <?xml version="1.0" encoding="iso-8859-1"?>
  18. <methodCall>
  19. <methodName>method.call</methodName>
  20. <params>
  21. <param>
  22. <value>
  23. <struct>
  24. <member>
  25. <name>date</name>
  26. <value>
  27. <dateTime.iso8601>%d-%d-%dT%d:%d:%d%s%d</dateTime.iso8601>
  28. </value>
  29. </member>
  30. </struct>
  31. </value>
  32. </param>
  33. </params>
  34. </methodCall>
  35. <?xml version="1.0" encoding="iso-8859-1"?>
  36. <methodCall>
  37. <methodName>method.call</methodName>
  38. <params>
  39. <param>
  40. <value>
  41. <struct>
  42. <member>
  43. <name>date</name>
  44. <value>
  45. <dateTime.iso8601>%d-%d-%d %d:%d:%d</dateTime.iso8601>
  46. </value>
  47. </member>
  48. </struct>
  49. </value>
  50. </param>
  51. </params>
  52. </methodCall>