summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/ffb/ffb_xmesa.c
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2004-01-20 15:24:50 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2004-01-20 15:24:50 +0000
commit4e713913fb88bc221eea1a18822cc782ca39af4d (patch)
tree71607e8e178163d5e8b79df15582cce89c6728cd /src/mesa/drivers/dri/ffb/ffb_xmesa.c
parentd4636e74c86fad221c57a3a1704106e2367fc230 (diff)
Undo some bits from last check-in related to the ctx->Driver.NewTextureObject
functions. Don't allocate the driver-specific data during texture object creation but do it later as needed (as code originally was).
Diffstat (limited to 'src/mesa/drivers/dri/ffb/ffb_xmesa.c')
-rw-r--r--src/mesa/drivers/dri/ffb/ffb_xmesa.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/ffb/ffb_xmesa.c b/src/mesa/drivers/dri/ffb/ffb_xmesa.c
index caca9d4384a..0d7a2fda205 100644
--- a/src/mesa/drivers/dri/ffb/ffb_xmesa.c
+++ b/src/mesa/drivers/dri/ffb/ffb_xmesa.c
@@ -38,6 +38,7 @@
#include "tnl/tnl.h"
#include "tnl/t_pipeline.h"
#include "array_cache/acache.h"
+#include "drivers/common/driverfuncs.h"
#include "ffb_context.h"
#include "ffb_dd.h"
@@ -178,18 +179,22 @@ ffbCreateContext(const __GLcontextModes *mesaVis,
__DRIscreenPrivate *sPriv;
ffbScreenPrivate *ffbScreen;
char *debug;
+ struct dd_function_table functions;
/* Allocate ffb context */
fmesa = (ffbContextPtr) CALLOC(sizeof(ffbContextRec));
if (!fmesa)
return GL_FALSE;
+ _mesa_init_driver_functions(&functions);
+
/* Allocate Mesa context */
if (sharedContextPrivate)
shareCtx = ((ffbContextPtr) sharedContextPrivate)->glCtx;
else
shareCtx = NULL;
- fmesa->glCtx = _mesa_create_context(mesaVis, shareCtx, fmesa, GL_TRUE);
+ fmesa->glCtx = _mesa_create_context(mesaVis, shareCtx,
+ &functions, fmesa);
if (!fmesa->glCtx) {
FREE(fmesa);
return GL_FALSE;
@@ -265,6 +270,9 @@ ffbCreateContext(const __GLcontextModes *mesaVis,
_swsetup_CreateContext( ctx );
/* All of this need only be done once for a new context. */
+ /* XXX these should be moved right after the
+ * _mesa_init_driver_functions() call above.
+ */
ffbDDExtensionsInit(ctx);
ffbDDInitDriverFuncs(ctx);
ffbDDInitStateFuncs(ctx);
@@ -272,7 +280,7 @@ ffbCreateContext(const __GLcontextModes *mesaVis,
ffbDDInitDepthFuncs(ctx);
ffbDDInitStencilFuncs(ctx);
ffbDDInitRenderFuncs(ctx);
- ffbDDInitTexFuncs(ctx);
+ /*ffbDDInitTexFuncs(ctx); not needed */
ffbDDInitBitmapFuncs(ctx);
ffbInitVB(ctx);