From 86fe74d58e79a5d02f849b4bff7f919801948ccc Mon Sep 17 00:00:00 2001 From: subzero2000 Date: Mon, 7 May 2007 22:46:47 +0000 Subject: [PATCH] Added support for gzip and enum types that was missing so when Doctrine_Record::unserialize() calls Doctrine_Record::cleanData(), the data for gzip and enum types is correct. Fixes #322. Also, minor formatting cleanup in Doctrine_Record::serialize(). --- lib/Doctrine/Record.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lib/Doctrine/Record.php b/lib/Doctrine/Record.php index c4a669719..73465ae00 100644 --- a/lib/Doctrine/Record.php +++ b/lib/Doctrine/Record.php @@ -523,10 +523,16 @@ abstract class Doctrine_Record extends Doctrine_Access implements Countable, Ite unset($vars['_data'][$k]); } else { switch ($this->_table->getTypeOf($k)) { - case "array": - case "object": + case 'array': + case 'object': $vars['_data'][$k] = serialize($vars['_data'][$k]); break; + case 'gzip': + $vars['_data'][$k] = gzcompress($vars['_data'][$k]); + break; + case 'enum': + $vars['_data'][$k] = $this->_table->enumIndex($k, $vars['_data'][$k]); + break; } } }