From 808f77ec4f891ae5a885f54b82f65c402551a10d Mon Sep 17 00:00:00 2001 From: Andrew O'Neil Date: Tue, 8 Apr 2008 00:03:43 +0000 Subject: [PATCH] don't cache in overridden instance_get(), as the fields are different for subclasses git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.2.2@52286 467b73ca-7a2a-4603-9d3b-597d59a354a9 --- filesystem/File.php | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/filesystem/File.php b/filesystem/File.php index 4f15afbcc..642f0fe2f 100755 --- a/filesystem/File.php +++ b/filesystem/File.php @@ -618,20 +618,18 @@ class File extends DataObject { // Work out which columns we're actually going to select // In short, we select everything except File.Content - if(!self::$dataobject_select) { - self::$dataobject_select = array(); - foreach($query->select as $item) { - if($item == "`File`.*") { - $fileColumns = DB::query("SHOW FIELDS IN `File`")->column(); - $columnsToAdd = array_diff($fileColumns, array('Content')); - foreach($columnsToAdd as $otherItem) self::$dataobject_select[] = '`File`.' . $otherItem; - } else { - self::$dataobject_select[] = $item; - } + $dataobject_select = array(); + foreach($query->select as $item) { + if($item == "`File`.*") { + $fileColumns = DB::query("SHOW FIELDS IN `File`")->column(); + $columnsToAdd = array_diff($fileColumns, array('Content')); + foreach($columnsToAdd as $otherItem) $dataobject_select[] = '`File`.' . $otherItem; + } else { + $dataobject_select[] = $item; } } - $query->select = self::$dataobject_select; + $query->select = $dataobject_select; $records = $query->execute(); $ret = $this->buildDataObjectSet($records, $containerClass);