vfb: Fix depth setup.
Initialize the depth corresponding to the root window before the pixmap-only depths. Otherwise you end up with the root window depth in the depth list twice, which is mildly confusing for clients and catastrophically confusing for PanoramiXConsolidate().
This commit is contained in:
parent
5c8540d8cf
commit
45530d1609
|
@ -863,8 +863,6 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
|
|||
pbits = vfbAllocateFramebufferMemory(pvfb);
|
||||
if (!pbits) return FALSE;
|
||||
|
||||
miSetPixmapDepths ();
|
||||
|
||||
switch (pvfb->depth) {
|
||||
case 8:
|
||||
miSetVisualTypesAndMasks (8,
|
||||
|
@ -876,20 +874,6 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
|
|||
(1 << DirectColor)),
|
||||
8, PseudoColor, 0, 0, 0);
|
||||
break;
|
||||
#if 0
|
||||
/* 12bit PseudoColor with 12bit color resolution
|
||||
* (to simulate SGI hardware and the 12bit PseudoColor emulation layer) */
|
||||
case 12:
|
||||
miSetVisualTypesAndMasks (12,
|
||||
((1 << StaticGray) |
|
||||
(1 << GrayScale) |
|
||||
(1 << StaticColor) |
|
||||
(1 << PseudoColor) |
|
||||
(1 << TrueColor) |
|
||||
(1 << DirectColor)),
|
||||
12, PseudoColor, 0, 0, 0);
|
||||
break;
|
||||
#endif
|
||||
case 15:
|
||||
miSetVisualTypesAndMasks (15,
|
||||
((1 << TrueColor) |
|
||||
|
@ -908,18 +892,10 @@ vfbScreenInit(int index, ScreenPtr pScreen, int argc, char **argv)
|
|||
(1 << DirectColor)),
|
||||
8, TrueColor, 0xff0000, 0x00ff00, 0x0000ff);
|
||||
break;
|
||||
#if 0
|
||||
/* 30bit TrueColor (to simulate Sun's XVR-1000/-4000 high quality
|
||||
* framebuffer series) */
|
||||
case 30:
|
||||
miSetVisualTypesAndMasks (30,
|
||||
((1 << TrueColor) |
|
||||
(1 << DirectColor)),
|
||||
10, TrueColor, 0x3ff00000, 0x000ffc00, 0x000003ff);
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
|
||||
miSetPixmapDepths ();
|
||||
|
||||
ret = fbScreenInit(pScreen, pbits, pvfb->width, pvfb->height,
|
||||
dpix, dpiy, pvfb->paddedWidth,pvfb->bitsPerPixel);
|
||||
#ifdef RENDER
|
||||
|
|
Loading…
Reference in New Issue
Block a user