diff --git a/mapprimitive.c b/mapprimitive.c index 6212d30384..a39364c252 100644 --- a/mapprimitive.c +++ b/mapprimitive.c @@ -1251,6 +1251,8 @@ static int getPolygonCenterOfGravity(shapeObj *p, pointObj *lp) sy = s>0?tsy:-tsy; } } + if(largestArea == 0) /*degenerate polygon*/ + return MS_FAILURE; lp->x = sx/(6*largestArea); lp->y = sy/(6*largestArea);