3257,3262c3257
<   $object_fields = $fields = $defs = $values = $serials = $placeholders = array();
<   
<   // Gather the available elements in the object.
<   foreach ($object as $key => $value) {
<     $object_fields[] = $key;
<   }
---
>   $fields = $defs = $values = $serials = $placeholders = array();
3273c3268
<     if (!in_array($field, $object_fields) && !count($update) && isset($info['default'])) {
---
>     if (!isset($object->$field) && !count($update) && isset($info['default'])) {
3285c3280
<     if (in_array($field, $object_fields)) {
---
>     if (isset($object->$field)) {
