URL: /rest/p/allura/tickets/3881/?oauth_body_hash......
This ticket doesn't exist, but raises a 500 instead of 404
Module allura.lib.security:307 in require_access << def require_access(obj, permission, **kwargs): predicate = has_access(obj, permission, **kwargs) return require(predicate, message='%s access required' % permission.capitalize()) def require_authenticated(): >> return require(predicate, message='%s access required' % permission.capitalize()) Module allura.lib.security:294 in require << from allura import model as M if predicate(): return if not message: message = """You don't have permission to do that. >> if predicate(): return Module allura.lib.utils:338 in __call__ << self.callable = callable def __call__(self, *args, **kw): return self.callable(*args, **kw) def __nonzero__(self): return self.callable() >> return self.callable(*args, **kw) Module allura.lib.security:258 in predicate << chainable_roles = [] for rid in roles: for ace in obj.acl: if M.ACE.match(ace, rid, permission): if ace.access == M.ACE.ALLOW: >> for ace in obj.acl: AttributeError: 'NoneType' object has no attribute 'acl'
Another url with (what Dave says) is a related error: https://sourceforge.net/u/rick446/profile/
Diff:
Diff:
On allura js/3836. To test, go to a url like /rest/p/test/tickets/3000 and make sure you get a 404. 3000 should be an invalid ticket number in a valid ticket tool.
Merged to dev.