diff --git a/src/mesa/drivers/ggi/default/stubs.c b/src/mesa/drivers/ggi/default/stubs.c
index f377532..f9df294 100644
--- a/src/mesa/drivers/ggi/default/stubs.c
+++ b/src/mesa/drivers/ggi/default/stubs.c
@@ -389,7 +389,7 @@
 	if (ctx->Stencil.Enabled) return NULL;
 	if (ctx->Polygon.SmoothFlag) return NULL;
 	if (ctx->Polygon.StippleFlag) return NULL;
-	if (ctx->Texture.Enabled) return NULL;  
+	if (ctx->Texture.ReallyEnabled) return NULL;  
 	if (ctx->Light.ShadeModel==GL_SMOOTH) return NULL;
 	if (ctx->Depth.Test && ctx->Depth.Func != GL_LESS) return NULL;
 
diff --git a/src/mesa/drivers/ggi/display/fbdev_mode.c b/src/mesa/drivers/ggi/display/fbdev_mode.c
index f7f8f0b..8aa8d91 100644
--- a/src/mesa/drivers/ggi/display/fbdev_mode.c
+++ b/src/mesa/drivers/ggi/display/fbdev_mode.c
@@ -1,4 +1,4 @@
-/* $Id: fbdev_mode.c,v 1.4 2000/01/07 08:34:44 jtaylor Exp $
+/* $Id: fbdev_mode.c,v 1.5 2000/10/28 10:02:44 jtaylor Exp $
 ******************************************************************************
 
    display-fbdev-mesa
@@ -80,7 +80,7 @@
 	priv->have_accel = 0;
 	for (id = 1; GGIMesa_fbdev_getapi(vis, id, libname, libargs) == 0; id++) 
 	{
-		if (_ggiOpenDL(vis, libname, libargs, NULL) == NULL) 
+		if (_ggiOpenDL(vis, libname, libargs, NULL) == 0) 
 		{
 			fprintf(stderr, "display-fbdev-mesa: Error opening the "
 				"%s (%s) library.\n", libname, libargs);
@@ -91,7 +91,7 @@
 	}
 
 	if (priv->oldpriv->accel &&
-	    _ggiOpenDL(vis, priv->accel, NULL, NULL) != NULL) {
+	    _ggiOpenDL(vis, priv->accel, NULL, NULL) != 0) {
 		priv->have_accel = 1;
 	} 
 	else 
diff --git a/src/mesa/drivers/ggi/ggimesa.c b/src/mesa/drivers/ggi/ggimesa.c
index 2311959..97c7780 100644
--- a/src/mesa/drivers/ggi/ggimesa.c
+++ b/src/mesa/drivers/ggi/ggimesa.c
@@ -370,7 +370,7 @@
 	  _mesa_destroy_visual(ctx->gl_vis);
 
 	if (ctx->gl_buffer)
-	  gl_destroy_framebuffer(ctx->gl_buffer);
+	  _mesa_destroy_framebuffer(ctx->gl_buffer);
 
 	info.rgb_flag = rgb_flag;
 	info.db_flag = db_flag;
@@ -459,7 +459,7 @@
 	ctx->lfb[1] = malloc(ctx->stride * ctx->height);
 	ctx->bufsize = (ctx->stride * ctx->height);
 	
-	ctx->gl_ctx->Visual = ctx->gl_vis;
+	ctx->gl_ctx->Visual = *ctx->gl_vis;
 	ctx->gl_ctx->Pixel.ReadBuffer = 
 	ctx->gl_ctx->Color.DrawBuffer = (db_flag) ? GL_BACK : GL_FRONT;
 
diff --git a/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h b/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h
index 2ee51d1..5c3c1e2 100644
--- a/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h
+++ b/src/mesa/drivers/ggi/include/ggi/mesa/display_fbdev.h
@@ -14,7 +14,7 @@
 	char *accel;
 	int have_accel;
 	void *accelpriv;
-	fbdev_hook *oldpriv;	/* Hooks back to the LibGGI fbdev target's private data */
+	ggi_fbdev_priv *oldpriv;	/* Hooks back to the LibGGI fbdev target's private data */
 };
 
 #endif /* _GGIMESA_DISPLAY_FBDEV_H */
