ZF-9146: Zend_Xmlrpc_Client converts null to array instead of a struct

Description

If a remote method has an optional parameter, which defaults to null and a client actually try to pass null for that parameter, the Zend_XmlRpc_Client converts null into the data type expected by the remote method. This causes null to be converted into an array which in turn causes a signature mismatch.

The client shouldn't do that when null is given as an optional parameter.

Comments

This isn't a bug. You need to add "null" to the @param tag.

/**
 * @param array $list
 * @return string
 */
public function doSomething($list = null) {
    // ...
}
/**
 * @param array|null $list
 * @return string
 */
public function doSomething($list = null) {
    // ...
}