From f0dec08c3a40434310cfbe0748eb9587c7279500 Mon Sep 17 00:00:00 2001
From: Malcolm Tredinnick <malcolm.tredinnick@gmail.com>
Date: Tue, 18 Mar 2008 15:40:27 +0000
Subject: [PATCH] Added more robust processing to parameterised syndication
 feeds for the case when all the "extra" URL bits are accidentally omitted.
 Patch from Niran Babalola <niran@niran.org>. Fixed #5855.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@7295 bcc190cf-cafb-0310-a4f2-bffc1f526a37
---
 AUTHORS                             |  1 +
 django/contrib/syndication/feeds.py | 15 ++++++++++-----
 2 files changed, 11 insertions(+), 5 deletions(-)

diff --git a/AUTHORS b/AUTHORS
index 6c9a7d40db..7a839faf88 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -59,6 +59,7 @@ answer newbie questions, and generally made Django that much better:
     Arthur <avandorp@gmail.com>
     David Avsajanishvili <avsd05@gmail.com>
     axiak@mit.edu
+    Niran Babalola <niran@niran.org>
     Morten Bagai <m@bagai.com>
     Mikaƫl Barbero <mikael.barbero nospam at nospam free.fr>
     Jiri Barton
diff --git a/django/contrib/syndication/feeds.py b/django/contrib/syndication/feeds.py
index 45b97d970a..3b2dd60aa0 100644
--- a/django/contrib/syndication/feeds.py
+++ b/django/contrib/syndication/feeds.py
@@ -55,18 +55,23 @@ class Feed(object):
                 return attr()
         return attr
 
+    def get_object(self, bits):
+        return None
+
     def get_feed(self, url=None):
         """
         Returns a feedgenerator.DefaultFeed object, fully populated, for
         this feed. Raises FeedDoesNotExist for invalid parameters.
         """
         if url:
-            try:
-                obj = self.get_object(url.split('/'))
-            except (AttributeError, ObjectDoesNotExist):
-                raise FeedDoesNotExist
+            bits = url.split('/')
         else:
-            obj = None
+            bits = []
+
+        try:
+            obj = self.get_object(bits)
+        except ObjectDoesNotExist:
+            raise FeedDoesNotExist
 
         if Site._meta.installed:
             current_site = Site.objects.get_current()