? log.txt
? modules/simpletest/tests/343502.test
? modules/simpletest/tests/path.test
? modules/system/system.http.inc
Index: includes/database/query.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/database/query.inc,v
retrieving revision 1.7
diff -u -p -r1.7 query.inc
--- includes/database/query.inc	13 Nov 2008 21:08:15 -0000	1.7
+++ includes/database/query.inc	6 Dec 2008 14:17:39 -0000
@@ -793,7 +793,7 @@ class UpdateQuery extends Query implemen
    *
    * @var array
    */
-  protected $fields;
+  protected $fields = array();
 
   /**
    * An array of values to update to.
Index: modules/simpletest/tests/database_test.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/database_test.test,v
retrieving revision 1.23
diff -u -p -r1.23 database_test.test
--- modules/simpletest/tests/database_test.test	26 Nov 2008 13:48:49 -0000	1.23
+++ modules/simpletest/tests/database_test.test	6 Dec 2008 14:17:57 -0000
@@ -799,6 +799,26 @@ class DatabaseUpdateComplexTestCase exte
       $this->assertTrue(FALSE, $e->getMessage());
     }
   }
+
+  /**
+   * Test update with only expression values.
+   */
+  function testUpdateOnlyExpression() {
+    try {
+      $before_age = db_query("SELECT age FROM {test} WHERE name = 'Ringo'")->fetchField();
+      $num_updated = db_update('test')
+        ->condition('name', 'Ringo')
+        ->expression('age', 'age + :age',array(':age' => 4))
+        ->execute();
+      $this->assertIdentical($num_updated, 1, t('Updated 1 record.'));
+
+      $after_age = db_query("SELECT age FROM {test} WHERE name = 'Ringo'")->fetchField();
+      $this->assertEqual($before_age + 4, $after_age, t('Age updated correctly'));
+    }
+    catch (Exception $e) {
+      $this->assertTrue(FALSE, $e->getMessage());
+    }
+  }
 }
 
 /**
