xf86-video-wsfb
ローテートオプションを付けた時に画面描画がおかしくなっていたのだけれど、何故か無効化されていた shadowFB を有効にしたら正常に描画されるようになった。
なんで無効化されてるんだろ。
Index: wsfb.h =================================================================== RCS file: /cvsroot/xsrc/external/mit/xf86-video-wsfb/dist/src/wsfb.h,v retrieving revision 1.2 diff -u -r1.2 wsfb.h --- wsfb.h 12 Jun 2009 01:53:00 -0000 1.2 +++ wsfb.h 6 Dec 2009 10:22:51 -0000 @@ -58,7 +58,7 @@ unsigned char* fbstart; unsigned char* fbmem; size_t fbmem_len; - //void * shadow; + void * shadow; Bool shadowFB; Bool HWCursor; CloseScreenProcPtr CloseScreen; Index: wsfb_driver.c =================================================================== RCS file: /cvsroot/xsrc/external/mit/xf86-video-wsfb/dist/src/wsfb_driver.c,v retrieving revision 1.5 diff -u -r1.5 wsfb_driver.c --- wsfb_driver.c 9 Nov 2009 05:24:05 -0000 1.5 +++ wsfb_driver.c 6 Dec 2009 10:22:51 -0000 @@ -835,7 +835,6 @@ fPtr->fbstart = fPtr->fbmem; -#if 0 if (fPtr->shadowFB) { fPtr->shadow = xcalloc(1, pScrn->virtualX * pScrn->virtualY * pScrn->bitsPerPixel); @@ -846,7 +845,6 @@ return FALSE; } } -#endif switch (pScrn->bitsPerPixel) { case 1: @@ -870,7 +868,7 @@ case 24: case 32: ret = fbScreenInit(pScreen, - /*fPtr->shadowFB ? fPtr->shadow :*/ fPtr->fbstart, + fPtr->shadowFB ? fPtr->shadow : fPtr->fbstart, pScrn->virtualX, pScrn->virtualY, pScrn->xDpi, pScrn->yDpi, pScrn->displayWidth, pScrn->bitsPerPixel);