diff -r 5a6b6e770365 -r 68c69c656a2c web/lib/Zend/Db/Table/Rowset/Abstract.php --- a/web/lib/Zend/Db/Table/Rowset/Abstract.php Thu May 07 15:10:09 2015 +0200 +++ b/web/lib/Zend/Db/Table/Rowset/Abstract.php Thu May 07 15:16:02 2015 +0200 @@ -15,16 +15,16 @@ * @category Zend * @package Zend_Db * @subpackage Table - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License - * @version $Id: Abstract.php 24593 2012-01-05 20:35:02Z matthew $ + * @version $Id$ */ /** * @category Zend * @package Zend_Db * @subpackage Table - * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ abstract class Zend_Db_Table_Rowset_Abstract implements SeekableIterator, Countable, ArrayAccess @@ -205,6 +205,7 @@ $this->_connected = true; } } + $this->rewind(); return $this->_connected; } @@ -426,6 +427,18 @@ 'readOnly' => $this->_readOnly ) ); + + if ( $this->_table instanceof Zend_Db_Table_Abstract ) { + $info = $this->_table->info(); + + if ( $this->_rows[$position] instanceof Zend_Db_Table_Row_Abstract ) { + if ($info['cols'] == array_keys($this->_data[$position])) { + $this->_rows[$position]->setTable($this->getTable()); + } + } + } else { + $this->_rows[$position]->setTable(null); + } } // return the row object