diff --git a/lib/Doctrine/ORM/QueryBuilder.php b/lib/Doctrine/ORM/QueryBuilder.php index 56ff21a07..f17bbdb04 100644 --- a/lib/Doctrine/ORM/QueryBuilder.php +++ b/lib/Doctrine/ORM/QueryBuilder.php @@ -1096,9 +1096,10 @@ class QueryBuilder } } + $rootAlias = $this->getRootAlias(); if ($criteria->getOrderings()) { foreach ($criteria->getOrderings() as $sort => $order) { - $this->addOrderBy($this->getRootAlias() . '.' . $sort, $order); + $this->addOrderBy($rootAlias . '.' . $sort, $order); } } diff --git a/tests/Doctrine/Tests/ORM/QueryBuilderTest.php b/tests/Doctrine/Tests/ORM/QueryBuilderTest.php index b18450ded..ab9c7bd85 100644 --- a/tests/Doctrine/Tests/ORM/QueryBuilderTest.php +++ b/tests/Doctrine/Tests/ORM/QueryBuilderTest.php @@ -402,6 +402,9 @@ class QueryBuilderTest extends \Doctrine\Tests\OrmTestCase public function testAddCriteriaWhere() { $qb = $this->_em->createQueryBuilder(); + $qb->select('u') + ->from('Doctrine\Tests\Models\CMS\CmsUser', 'u'); + $criteria = new Criteria(); $criteria->where($criteria->expr()->eq('field', 'value')); @@ -429,6 +432,9 @@ class QueryBuilderTest extends \Doctrine\Tests\OrmTestCase public function testAddCriteriaLimit() { $qb = $this->_em->createQueryBuilder(); + $qb->select('u') + ->from('Doctrine\Tests\Models\CMS\CmsUser', 'u'); + $criteria = new Criteria(); $criteria->setFirstResult(2); $criteria->setMaxResults(10); @@ -442,7 +448,11 @@ class QueryBuilderTest extends \Doctrine\Tests\OrmTestCase public function testAddCriteriaUndefinedLimit() { $qb = $this->_em->createQueryBuilder(); - $qb->setFirstResult(2)->setMaxResults(10); + $qb->select('u') + ->from('Doctrine\Tests\Models\CMS\CmsUser', 'u') + ->setFirstResult(2) + ->setMaxResults(10); + $criteria = new Criteria(); $qb->addCriteria($criteria);