ZF-8190: Undefined variable in Zend_Db_Select
Description
The changes in Zend_Db_Select in 1.9.4 release started to raise an undefined variable notice:
( ! ) Notice: Undefined variable: lastFromCorrelationName in /data/html/vilagenet.com.br/library/Zend/Db/Select.php on line 840
To reproduce:
$adapter = Zend_Db_Table::getDefaultAdapter();
$select = $adapter->select()
->from('sometable', 'id');
$select2 = $adapter->select()
->from(null, 'COUNT(*) FROM (' . $select->__toString() . ') AS count');
$result = $adapter->fetchCol($select2);
The variable {{$lastFromCorrelationName}} is declared in Zend_Db_Select on line 810, inside an {{if}} statement, but is used outside it, on line 840.
Moving the declaration to just outside the {{if}} (line 800) corrects the problem, and all unit tests still pass.
Tested in trunk and the bug is still present.
Comments
Posted by Luiz Damim (luizvd) on 2009-10-30T08:57:17.000+0000
Attaching the patch to solve this issue.
Posted by Satoru Yoshida (satoruyoshida) on 2009-10-30T18:01:39.000+0000
Solved in SVN r18750(trunk), r18751(1.9branch)