Skip to content
Permalink
Browse files

Fix infinite loop when painting grid with bad parameters

Credit to @m-kuhn
  • Loading branch information
nyalldawson committed Jun 26, 2015
1 parent 9170b99 commit 4876c6572ca9b0930a1e1451e76728755e1b666a
Showing with 6 additions and 0 deletions.
  1. +6 −0 src/core/composer/qgscomposermapgrid.cpp
@@ -1651,6 +1651,9 @@ int QgsComposerMapGrid::xGridLinesCRSTransform( const QgsRectangle& bbox, const
step = ( maxX + 360.0 - minX ) / 20;
}

if ( step == 0 )
return 1;

int gridLineCount = 0;
while ( currentLevel >= bbox.yMinimum() && gridLineCount < MAX_GRID_LINES )
{
@@ -1714,6 +1717,9 @@ int QgsComposerMapGrid::yGridLinesCRSTransform( const QgsRectangle& bbox, const
double maxY = bbox.yMaximum();
double step = ( maxY - minY ) / 20;

if ( step == 0 )
return 1;

bool crosses180 = false;
bool crossed180 = false;
if ( mCRS.geographicFlag() && ( bbox.xMinimum() > bbox.xMaximum() ) )

0 comments on commit 4876c65

Please sign in to comment.
You can’t perform that action at this time.