{\r
switch (m_op) {\r
case OP_NOT:\r
- switch (m_operands[0]->authorized(request,session)) {\r
+ switch (m_operands.front()->authorized(request,session)) {\r
case shib_acl_true:\r
return shib_acl_false;\r
case shib_acl_false:\r
case OP_AND:\r
{\r
for (vector<AccessControl*>::const_iterator i=m_operands.begin(); i!=m_operands.end(); i++) {\r
- if (!(*i)->authorized(request,session))\r
+ if ((*i)->authorized(request,session) != shib_acl_true)\r
return shib_acl_false;\r
}\r
return shib_acl_true;\r
case OP_OR:\r
{\r
for (vector<AccessControl*>::const_iterator i=m_operands.begin(); i!=m_operands.end(); i++) {\r
- if ((*i)->authorized(request,session))\r
+ if ((*i)->authorized(request,session) == shib_acl_true)\r
return shib_acl_true;\r
}\r
return shib_acl_false;\r