ZF-9643: basic Zend_Acl::setRule() doesn't work properly with null arguments on $roles or $resources or $privileges

Description

$acl = new Zend_Acl();

$acl->addResource('res');

$acl->addRole('role');

$acl->allow('role','res','privilege'); echo $acl->isAllowed('role','res','privilege'); // 1

$acl->removeAllow('role',null,'privilege'); echo $acl->isAllowed('role','res','privilege'); // again 1, why?

//Same goes with null on $roles or $privileges //So to imitate "null" behavior I had to list all the roles, resources, etc. :(

Comments

Fixed in 22580 & 22581 in trunk, and will be available in next minor release.

A new patch has beed added to ZF-10649.

I encourage everyone to test it out as it may affect developers who were watching this issue. It is backwards compatible, and fixes a new issue that has arisen from this fix.