summaryrefslogtreecommitdiff
path: root/hw/kdrive/fbdev/fbdev.c
diff options
context:
space:
mode:
authorPhil Blundell <pb@reciva.com>2004-11-28 23:20:17 +0000
committerPhil Blundell <pb@reciva.com>2004-11-28 23:20:17 +0000
commitdf2f2ff5a4ebf6c5289da64bf3f572341a0f7656 (patch)
tree77289b74e0b2ae00275de530bad433492ca96ea9 /hw/kdrive/fbdev/fbdev.c
parent6062f6a6e7b3c444a35e3f11b2541df2aa0066a2 (diff)
Re-read "fix" structure from kernel after mode selection, in case line
pitch has changed.
Diffstat (limited to 'hw/kdrive/fbdev/fbdev.c')
-rw-r--r--hw/kdrive/fbdev/fbdev.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/hw/kdrive/fbdev/fbdev.c b/hw/kdrive/fbdev/fbdev.c
index bae235bc9..d38701019 100644
--- a/hw/kdrive/fbdev/fbdev.c
+++ b/hw/kdrive/fbdev/fbdev.c
@@ -198,6 +198,11 @@ fbdevScreenInitialize (KdScreenInfo *screen, FbdevScrPriv *scrpriv)
return FALSE;
}
+ /* Re-get the "fixed" parameters since they might have changed */
+ k = ioctl (priv->fd, FBIOGET_FSCREENINFO, &priv->fix);
+ if (k < 0)
+ perror ("FBIOGET_FSCREENINFO");
+
/* Now get the new screeninfo */
ioctl (priv->fd, FBIOGET_VSCREENINFO, &priv->var);
depth = priv->var.bits_per_pixel;