Make the R200 driver work with the NewTextureObject in Mesa. Other

drivers that use the texmem interface will likely need similar changes.
This commit is contained in:
Ian Romanick
2004-01-21 16:42:30 +00:00
parent 34a7857411
commit 169223c9ee
2 changed files with 9 additions and 9 deletions
-5
View File
@@ -414,11 +414,6 @@ GLboolean r200CreateContext( const __GLcontextModes *glVisual,
r200InitState( rmesa );
r200InitSwtcl( ctx );
/* used to be in r200InitTextureFuncs() */
driInitTextureObjects( ctx, & rmesa->swapped,
DRI_TEXMGR_DO_TEXTURE_1D
| DRI_TEXMGR_DO_TEXTURE_2D );
fthrottle_mode = driQueryOptioni(&rmesa->optionCache, "fthrottle_mode");
rmesa->iw.irq_seq = -1;
rmesa->irqsEmitted = 0;
+9 -4
View File
@@ -941,10 +941,14 @@ static void r200BindTexture( GLcontext *ctx, GLenum target,
ctx->Texture.CurrentUnit );
}
if ( target == GL_TEXTURE_2D || target == GL_TEXTURE_1D ) {
if ( texObj->DriverData == NULL ) {
r200AllocTexObj( texObj );
}
if ( (target == GL_TEXTURE_1D)
|| (target == GL_TEXTURE_2D)
#if ENABLE_HW_3D_TEXTURE
|| (target == GL_TEXTURE_3D)
#endif
|| (target == GL_TEXTURE_CUBE_MAP)
|| (target == GL_TEXTURE_RECTANGLE_NV) ) {
assert( texObj->DriverData != NULL );
}
}
@@ -1012,6 +1016,7 @@ r200NewTextureObject( GLcontext *ctx, GLuint name, GLenum target )
if (!obj)
return NULL;
obj->MaxAnisotropy = rmesa->initialMaxAnisotropy;
r200AllocTexObj( obj );
return obj;
}