diff --git a/lib/Doctrine/Record.php b/lib/Doctrine/Record.php
index <HASH>..<HASH> 100644
--- a/lib/Doctrine/Record.php
+++ b/lib/Doctrine/Record.php
@@ -1118,7 +1118,12 @@ abstract class Doctrine_Record extends Doctrine_Access implements Countable, Ite
      * @return Doctrine_Record
      */
     public function copy() {
-        return $this->_table->create($this->_data);
+        $ret = $this->_table->create($this->_data);
+        $modified = array();
+        foreach($this->_data as $key => $val)
+            if (!($val instanceof Doctrine_Null))
+                $ret->_modified[] = $key;
+        return $ret;
     }
     /**
      * assignIdentifier
fixing #<I> - copying a record now will set non-null fields to modified so that when it's saved it inserts correctly