kdrive: fix bug in vesa 4plane in 8bpp mode

This commit is contained in:
Keith Packard 2000-09-19 23:50:48 +00:00
parent 5b9f49f64c
commit 02777941e6
2 changed files with 7 additions and 3 deletions

View File

@ -19,7 +19,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
/* $XFree86$ */
/* $XFree86: xc/programs/Xserver/hw/kdrive/vesa/vesa.c,v 1.5 2000/09/15 07:25:13 keithp Exp $ */
#include "vesa.h"
@ -327,6 +327,7 @@ vesaScreenInitialize (KdScreenInfo *screen, VesaScreenPrivPtr pscr)
return FALSE;
pscr->shadow = vesa_shadow;
pscr->origDepth = screen->fb[0].depth;
if (vesa_linear_fb)
pscr->mapping = VESA_LINEAR;
else
@ -334,7 +335,7 @@ vesaScreenInitialize (KdScreenInfo *screen, VesaScreenPrivPtr pscr)
vmib = &pscr->mode->vmib;
depth = vesaDepth (vmib);;
depth = vesaDepth (vmib);
bpp = vmib->BitsPerPixel;
switch (vmib->MemoryModel) {
@ -793,6 +794,8 @@ vesaScreenFini(KdScreenInfo *screen)
if (pscr->fb)
VbeUnmapFramebuffer(priv->vi, &pscr->mode->vmib, pscr->fb);
screen->fb[0].depth = pscr->origDepth;
return;
}

View File

@ -19,7 +19,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
/* $XFree86$ */
/* $XFree86: xc/programs/Xserver/hw/kdrive/vesa/vesa.h,v 1.5 2000/09/15 07:25:13 keithp Exp $ */
#ifndef _VESA_H_
#define _VESA_H_
@ -51,6 +51,7 @@ typedef struct _VesaScreenPriv {
Bool shadow;
Bool rotate;
int mapping;
int origDepth;
void *fb;
} VesaScreenPrivRec, *VesaScreenPrivPtr;