Index: modules/aggregator/aggregator.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/aggregator/aggregator.admin.inc,v
retrieving revision 1.18
diff -u -r1.18 aggregator.admin.inc
--- modules/aggregator/aggregator.admin.inc	22 Oct 2008 18:29:28 -0000	1.18
+++ modules/aggregator/aggregator.admin.inc	7 Nov 2008 05:12:15 -0000
@@ -361,7 +361,8 @@
       if ($entry['tag'] == 'OUTLINE' && isset($entry['attributes'])) {
         $item = $entry['attributes'];
         if (!empty($item['XMLURL'])) {
-          $feeds[] = array('title' => $item['TEXT'], 'url' => $item['XMLURL']);
+          $title = isset($item['TEXT']) ? $item['TEXT'] : $item['XMLURL'];
+          $feeds[] = array('title' => $title, 'url' => $item['XMLURL']);
         }
       }
     }
Index: modules/aggregator/aggregator.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/aggregator/aggregator.test,v
retrieving revision 1.12
diff -u -r1.12 aggregator.test
--- modules/aggregator/aggregator.test	2 Nov 2008 11:17:56 -0000	1.12
+++ modules/aggregator/aggregator.test	7 Nov 2008 05:12:15 -0000
@@ -585,7 +585,7 @@
     $this->assertRaw(t('A feed named %title already exists.', array('%title' => $feeds[1]['title'])), t('Verifying that a duplicate title was identified'));
 
     $after = db_query('SELECT COUNT(*) FROM {aggregator_feed}')->fetchField();
-    $this->assertEqual($after, 2, t('Verifying that two distinct feeds were added.'));
+    $this->assertEqual($after, 3, t('Verifying that three distinct feeds were added.'));
 
     $feeds_from_db = db_query("SELECT f.title, f.url, f.refresh, cf.cid FROM {aggregator_feed} f LEFT JOIN {aggregator_category_feed} cf ON f.fid = cf.fid");
     $refresh = $category = TRUE;
