--- xserver-xorg-video-psb-0.36.0-ref/src/psb_video.c 2010-06-07 22:17:46.302760345 +0200 +++ xserver-xorg-video-psb-0.32/src/psb_video.c 2010-06-10 17:29:23.400003434 +0200 @@ -686,8 +684,13 @@ * coordinates) to the backing pixmap. */ - while (!psbExaGetSuperOffset(pPixmap, &pre_add, &dstBuf)) + if(!psbExaGetSuperOffset(pPixmap, &pre_add, &dstBuf)){ exaMoveInPixmap(pPixmap); + if(!psbExaGetSuperOffset(pPixmap, &pre_add, &dstBuf)){ + return FALSE; + } + } + dst.buffer = mmKernelBuf(dstBuf); dst.offset = pre_add;