Skip to content
Permalink
Browse files

Fix infinite loop when painting grid with bad parameters

Credit to @m-kuhn

Cherry-picked from 4876c65
  • Loading branch information
nyalldawson committed Jul 9, 2015
1 parent 2037c34 commit 6a206d8d36a6c18f0252a82da1d470f32d4c6053
Showing with 6 additions and 0 deletions.
  1. +6 −0 src/core/composer/qgscomposermapgrid.cpp
@@ -1644,6 +1644,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 )
{
@@ -1707,6 +1710,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 6a206d8

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