bodhi/controllers.py | 6 +++++- bodhi/rss.py | 6 ++++-- 2 files changed, 9 insertions(+), 3 deletions(-)
New commits: commit c72d7c55601f36121866ed434278f4576a1a5a83 Author: Luke Macken lmacken@redhat.com Date: Wed Mar 2 16:17:36 2011 -0500
Gracefully handle unknown releases in our critpath api and feed generator
diff --git a/bodhi/controllers.py b/bodhi/controllers.py index 6beaa7d..109a30f 100644 --- a/bodhi/controllers.py +++ b/bodhi/controllers.py @@ -1435,7 +1435,11 @@ class Root(controllers.RootController): query = [PackageUpdate.q.status != 'obsolete'] release_name = None if release and release != u'None': - release = Release.byName(release) + try: + release = Release.byName(release) + except SQLObjectNotFound: + flash('Unknown release: %s' % release) + raise redirect('/') releases = [release] release_name = release.name title = title + ' for ' + release.long_name diff --git a/bodhi/rss.py b/bodhi/rss.py index a147aae..a0a383b 100644 --- a/bodhi/rss.py +++ b/bodhi/rss.py @@ -48,7 +48,6 @@ class Feed(FeedController): try: rel = Release.byName(release.upper()) except SQLObjectNotFound: - log.warning("Cannot find Release '%s' for RSS data" % release) return dict(title = '%s not found' % release, entries=[]) query.append(PackageUpdate.q.releaseID == rel.id) title.append(rel.long_name) @@ -176,7 +175,10 @@ class Feed(FeedController): title = 'Latest Critical Path Updates' query = [PackageUpdate.q.status != 'obsolete'] if release: - release = Release.byName(release) + try: + release = Release.byName(release) + except SQLObjectNotFound: + return dict(title = '%s release not found' % release, entries=[]) releases = [release] title = title + ' for %s' % release.long_name else: