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:34:41 -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:34:42 -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;
Index: includes/database/pgsql/query.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/pgsql/query.inc,v
retrieving revision 1.2
diff -u -r1.2 query.inc
--- includes/database/pgsql/query.inc	15 Sep 2008 20:48:07 -0000	1.2
+++ includes/database/pgsql/query.inc	7 Nov 2008 05:34:41 -0000
@@ -91,11 +91,14 @@
         $values[] = '(' . implode(', ', $placeholders) . ')';
       }
     }
-    else {
+    else if (count($this->defaultFields)) {
       // If there are no values, then this is a default-only query.  We still need to handle that.
       $placeholders = array_fill(0, count($this->defaultFields), 'default');
       $values[] = '(' . implode(', ', $placeholders) .')';
     }
+    else {
+      $values[] = '(default)';
+    }
 
     $query .= implode(', ', $values);
 
Index: includes/database/mysql/query.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/mysql/query.inc,v
retrieving revision 1.3
diff -u -r1.3 query.inc
--- includes/database/mysql/query.inc	27 Sep 2008 20:10:26 -0000	1.3
+++ includes/database/mysql/query.inc	7 Nov 2008 05:34:41 -0000
@@ -61,11 +61,14 @@
         $values[] = '('. implode(', ', $placeholders) .')';
       }
     }
-    else {
+    else if (count($this->defaultFields)) {
       // If there are no values, then this is a default-only query.  We still need to handle that.
       $placeholders = array_fill(0, count($this->defaultFields), 'default');
       $values[] = '(' . implode(', ', $placeholders) .')';
     }
+    else {
+      $values[] = '(default)';
+    }
 
     $query .= implode(', ', $values);
 
