summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hw/kdrive/src/kdrive.h2
-rw-r--r--hw/kdrive/src/koffscreen.c4
2 files changed, 3 insertions, 3 deletions
diff --git a/hw/kdrive/src/kdrive.h b/hw/kdrive/src/kdrive.h
index df59bb972..6cc976913 100644
--- a/hw/kdrive/src/kdrive.h
+++ b/hw/kdrive/src/kdrive.h
@@ -121,7 +121,7 @@ typedef struct _KdScreenInfo {
CARD8 *memory_base;
int off_screen_base;
int off_screen_size;
- pointer off_screen_areas;
+ struct _RealOffscreenArea *off_screen_areas;
} KdScreenInfo;
typedef struct _KdCardFuncs {
diff --git a/hw/kdrive/src/koffscreen.c b/hw/kdrive/src/koffscreen.c
index 1454c4a64..65c15a284 100644
--- a/hw/kdrive/src/koffscreen.c
+++ b/hw/kdrive/src/koffscreen.c
@@ -222,12 +222,13 @@ KdOffscreenSwapOut (ScreenPtr pScreen)
KdOffscreenValidate (pScreen);
}
KdOffscreenValidate (pScreen);
+ KdOffscreenFini (pScreen);
}
void
KdOffscreenSwapIn (ScreenPtr pScreen)
{
- /* nothing to do here; page in on usage */
+ KdOffscreenInit (pScreen);
}
/* merge the next free area into this one */
@@ -248,7 +249,6 @@ KdOffscreenMerge (KdOffscreenArea *area)
void
KdOffscreenFree (KdOffscreenArea *area)
{
- ScreenPtr pScreen = area->screen;
RealOffscreenArea *real_area = (RealOffscreenArea *) area;
RealOffscreenArea *next = real_area->next;
RealOffscreenArea *prev = real_area->prev;