Mercurial > p > roundup > code
diff roundup/cgi/client.py @ 3494:5a56abcf1b22
catch bad classname in URL (related to [SF#1240541])
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Wed, 25 Jan 2006 02:59:27 +0000 |
| parents | 8e3c0b88afad |
| children | 61d48244e7a8 |
line wrap: on
line diff
--- a/roundup/cgi/client.py Wed Jan 25 02:26:49 2006 +0000 +++ b/roundup/cgi/client.py Wed Jan 25 02:59:27 2006 +0000 @@ -1,4 +1,4 @@ -# $Id: client.py,v 1.218 2006-01-09 09:14:27 a1s Exp $ +# $Id: client.py,v 1.219 2006-01-25 02:59:27 richard Exp $ """WWW request handler (also used in the stand-alone server). """ @@ -591,7 +591,11 @@ if m: self.classname = m.group(1) self.nodeid = m.group(2) - if not self.db.getclass(self.classname).hasnode(self.nodeid): + try: + klass = self.db.getclass(self.classname) + except KeyError: + raise NotFound, '%s/%s'%(self.classname, self.nodeid) + if not klass.hasnode(self.nodeid): raise NotFound, '%s/%s'%(self.classname, self.nodeid) # with a designator, we default to item view self.template = 'item'
