Quellcode durchsuchen

[Security] fixes a regression in the AclVoter

Johannes M. Schmitt vor 14 Jahren
Ursprung
Commit
bac3ee86f9

+ 1 - 1
src/Symfony/Component/Security/Acl/Permission/BasicPermissionMap.php

@@ -87,7 +87,7 @@ class BasicPermissionMap implements PermissionMapInterface
     public function getMasks($permission, $object)
     {
         if (!isset($this->map[$permission])) {
-            throw new \InvalidArgumentException(sprintf('The permission "%s" is not supported by this implementation.', $permission));
+            return null;
         }
 
         return $this->map[$permission];

+ 14 - 0
tests/Symfony/Tests/Component/Security/Acl/Permission/BasicPermissionMapTest.php

@@ -0,0 +1,14 @@
+<?php
+
+namespace Symfony\Tests\Component\Security\Acl\Permission;
+
+use Symfony\Component\Security\Acl\Permission\BasicPermissionMap;
+
+class BasicPermissionMapTest extends \PHPUnit_Framework_TestCase
+{
+    public function testGetMasksReturnsNullWhenNotSupportedMask()
+    {
+        $map = new BasicPermissionMap();
+        $this->assertNull($map->getMasks('IS_AUTHENTICATED_REMEBERED', null));
+    }
+}