Don't split window quads which have a size of zero. This should prevent crashes due to assert failing.

BUG: 177927

svn path=/trunk/KDE/kdebase/workspace/; revision=897801
icc-effect-5.14.5
Martin Gräßlin 2008-12-16 20:48:34 +00:00
parent 84c28985fb
commit fe9092dd89
1 changed files with 10 additions and 0 deletions

View File

@ -597,6 +597,11 @@ WindowQuadList WindowQuadList::splitAtX( double x ) const
ret.append( quad );
continue;
}
if( quad.left() == quad.right() ) // quad has no size
{
ret.append( quad );
continue;
}
ret.append( quad.makeSubQuad( quad.left(), quad.top(), x, quad.bottom()));
ret.append( quad.makeSubQuad( x, quad.top(), quad.right(), quad.bottom()));
}
@ -628,6 +633,11 @@ WindowQuadList WindowQuadList::splitAtY( double y ) const
ret.append( quad );
continue;
}
if( quad.top() == quad.bottom() ) // quad has no size
{
ret.append( quad );
continue;
}
ret.append( quad.makeSubQuad( quad.left(), quad.top(), quad.right(), y ));
ret.append( quad.makeSubQuad( quad.left(), y, quad.right(), quad.bottom()));
}