<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -22,5 +22,5 @@
  * @lastmodified  $Date$
  * @license       http://www.opensource.org/licenses/mit-license.php The MIT License
  */
-return $config['Cake.version'] = '1.2.0.7962';
+return $config['Cake.version'] = '1.2.1.8004';
 ?&gt;
\ No newline at end of file</diff>
      <filename>config/config.php</filename>
    </modified>
    <modified>
      <diff>@@ -279,12 +279,15 @@ class BehaviorCollection extends Object {
 				$this-&gt;{$name} =&amp; new $class;
 			}
 		} elseif (isset($this-&gt;{$name}-&gt;settings) &amp;&amp; isset($this-&gt;{$name}-&gt;settings[$this-&gt;modelName])) {
-			if ($config !== null &amp;&amp; $config !== false) {
+			if (!empty($config)) {
 				$config = array_merge($this-&gt;{$name}-&gt;settings[$this-&gt;modelName], $config);
 			} else {
 				$config = array();
 			}
 		}
+		if (empty($config)) {
+			$config = array();
+		}
 		$this-&gt;{$name}-&gt;setup(ClassRegistry::getObject($this-&gt;modelName), $config);
 
 		foreach ($this-&gt;{$name}-&gt;mapMethods as $method =&gt; $alias) {</diff>
      <filename>libs/model/behavior.php</filename>
    </modified>
    <modified>
      <diff>@@ -1390,7 +1390,8 @@ class DboSource extends DataSource {
  * @access protected
  */
 	function _prepareUpdateFields(&amp;$model, $fields, $quoteValues = true, $alias = false) {
-		$quotedAlias = $this-&gt;startQuote . $model-&gt;alias . $this-&gt;startQuote;
+		$quotedAlias = $this-&gt;startQuote . $model-&gt;alias . $this-&gt;endQuote;
+
 		foreach ($fields as $field =&gt; $value) {
 			if ($alias &amp;&amp; strpos($field, '.') === false) {
 				$quoted = $model-&gt;escapeField($field);
@@ -1404,19 +1405,20 @@ class DboSource extends DataSource {
 
 			if ($value === null) {
 				$updates[] = $quoted . ' = NULL';
+				continue;
+			}
+			$update = $quoted . ' = ';
+
+			if ($quoteValues) {
+				$update .= $this-&gt;value($value, $model-&gt;getColumnType($field), false);
+			} elseif (!$alias) {
+				$update .= str_replace($quotedAlias . '.', '', str_replace(
+					$model-&gt;alias . '.', '', $value
+				));
 			} else {
-				$update = $quoted . ' = ';
-				if ($quoteValues) {
-					$update .= $this-&gt;value($value, $model-&gt;getColumnType($field), false);
-				} elseif (!$alias) {
-					$update .= str_replace($quotedAlias . '.', '', str_replace(
-						$model-&gt;alias . '.', '', $value
-					));
-				} else {
-					$update .= $value;
-				}
-				$updates[] =  $update;
+				$update .= $value;
 			}
+			$updates[] =  $update;
 		}
 		return $updates;
 	}
@@ -1674,7 +1676,11 @@ class DboSource extends DataSource {
 					$dot = strpos($fields[$i], '.');
 
 					if ($dot === false) {
-						$fields[$i] = $this-&gt;name($alias . '.' . $fields[$i]);
+						$prefix = !(
+							strpos($fields[$i], ' ') !== false ||
+							strpos($fields[$i], '(') !== false
+						);
+						$fields[$i] = $this-&gt;name(($prefix ? '' : '') . $alias . '.' . $fields[$i]);
 					} else {
 						$value = array();
 						$comma = strpos($fields[$i], ',');</diff>
      <filename>libs/model/datasources/dbo_source.php</filename>
    </modified>
    <modified>
      <diff>@@ -37,6 +37,14 @@ require_once LIBS.'model'.DS.'datasources'.DS.'dbo'.DS.'dbo_mssql.php';
  * @subpackage    cake.tests.cases.libs.model.datasources.dbo
  */
 class DboMssqlTestDb extends DboMssql {
+
+	function __construct() {}
+
+	function connect() {
+		$this-&gt;connected = true;
+		return true;
+	}
+	function lastError() {}
 /**
  * simulated property
  *
@@ -69,6 +77,16 @@ class DboMssqlTestDb extends DboMssql {
  * @access protected
  * @return void
  */
+	function _matchRecords(&amp;$model, $conditions = null) {
+		return $this-&gt;conditions(array('id' =&gt; array(1, 2)));
+	}
+/**
+ * fetchAll method
+ * 
+ * @param mixed $sql 
+ * @access protected
+ * @return void
+ */
 	function fetchAll($sql, $cache = true, $modelName = null) {
 		$result = parent::fetchAll($sql, $cache, $modelName);
 		if (!empty($this-&gt;fetchAllResultsStack)) {
@@ -297,6 +315,17 @@ class DboMssqlTest extends CakeTestCase {
 		$this-&gt;assertEqual($result, $expected);
 	}
 
+	function testUpdateAllSyntax() {
+		$model = ClassRegistry::init('MssqlTestModel');
+		$fields = array('MssqlTestModel.client_id' =&gt; '[MssqlTestModel].[client_id] + 1');
+		$conditions = array('MssqlTestModel.updated &lt;' =&gt; date('2009-01-01 00:00:00'));
+		$this-&gt;db-&gt;update($model, $fields, null, $conditions);
+
+		$result = $this-&gt;db-&gt;getLastQuery();
+		$this-&gt;assertNoPattern('/MssqlTestModel/', $result);
+		$this-&gt;assertPattern('/^UPDATE \[mssql_test_models\]/', $result);
+		$this-&gt;assertPattern('/SET \[client_id\] = \[client_id\] \+ 1/', $result);
+	}
 
 /**
  * tearDown method</diff>
      <filename>tests/cases/libs/model/datasources/dbo/dbo_mssql.test.php</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>0ace726559231ca33c3996bb8ecb8b750843f99d</id>
    </parent>
    <parent>
      <id>6b6e2fb7146dbfcc40a21fc20cd6161b12d56167</id>
    </parent>
  </parents>
  <author>
    <name>Joel Moss</name>
    <email>joel@developwithstyle.com</email>
  </author>
  <url>http://github.com/joelmoss/cakephp/commit/d4d865d765b7580b1f905302074ccdeab5f36757</url>
  <id>d4d865d765b7580b1f905302074ccdeab5f36757</id>
  <committed-date>2009-01-17T07:16:28-08:00</committed-date>
  <authored-date>2009-01-17T07:16:28-08:00</authored-date>
  <message>Merge branch 'master' into pimped</message>
  <tree>bf071077ff739294aa911eec7fa86f5cc067f209</tree>
  <committer>
    <name>Joel Moss</name>
    <email>joel@developwithstyle.com</email>
  </committer>
</commit>
