fixes for proxy cube map texture images
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
/* $Id: context.c,v 1.145 2001/07/19 15:54:34 brianp Exp $ */
|
||||
/* $Id: context.c,v 1.146 2001/07/26 20:02:10 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
@@ -1351,9 +1351,11 @@ alloc_proxy_textures( GLcontext *ctx )
|
||||
ctx->Texture.Proxy1D->Image[i] = _mesa_alloc_texture_image();
|
||||
ctx->Texture.Proxy2D->Image[i] = _mesa_alloc_texture_image();
|
||||
ctx->Texture.Proxy3D->Image[i] = _mesa_alloc_texture_image();
|
||||
ctx->Texture.ProxyCubeMap->Image[i] = _mesa_alloc_texture_image();
|
||||
if (!ctx->Texture.Proxy1D->Image[i]
|
||||
|| !ctx->Texture.Proxy2D->Image[i]
|
||||
|| !ctx->Texture.Proxy3D->Image[i]) {
|
||||
|| !ctx->Texture.Proxy3D->Image[i]
|
||||
|| !ctx->Texture.ProxyCubeMap->Image[i]) {
|
||||
out_of_memory = GL_TRUE;
|
||||
}
|
||||
}
|
||||
@@ -1368,10 +1370,14 @@ alloc_proxy_textures( GLcontext *ctx )
|
||||
if (ctx->Texture.Proxy3D->Image[i]) {
|
||||
_mesa_free_texture_image(ctx->Texture.Proxy3D->Image[i]);
|
||||
}
|
||||
if (ctx->Texture.ProxyCubeMap->Image[i]) {
|
||||
_mesa_free_texture_image(ctx->Texture.ProxyCubeMap->Image[i]);
|
||||
}
|
||||
}
|
||||
_mesa_free_texture_object(NULL, ctx->Texture.Proxy1D);
|
||||
_mesa_free_texture_object(NULL, ctx->Texture.Proxy2D);
|
||||
_mesa_free_texture_object(NULL, ctx->Texture.Proxy3D);
|
||||
_mesa_free_texture_object(NULL, ctx->Texture.ProxyCubeMap);
|
||||
return GL_FALSE;
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
/* $Id: teximage.c,v 1.102 2001/07/23 16:18:18 brianp Exp $ */
|
||||
/* $Id: teximage.c,v 1.103 2001/07/26 20:02:10 brianp Exp $ */
|
||||
|
||||
/*
|
||||
* Mesa 3-D graphics library
|
||||
@@ -1525,7 +1525,9 @@ _mesa_TexImage2D( GLenum target, GLint level, GLint internalFormat,
|
||||
texObj->Complete = GL_FALSE;
|
||||
ctx->NewState |= _NEW_TEXTURE;
|
||||
}
|
||||
else if (target == GL_PROXY_TEXTURE_2D) {
|
||||
else if (target == GL_PROXY_TEXTURE_2D ||
|
||||
(target == GL_PROXY_TEXTURE_CUBE_MAP_ARB &&
|
||||
ctx->Extensions.ARB_texture_cube_map)) {
|
||||
/* Proxy texture: check for errors and update proxy state */
|
||||
GLenum error = texture_error_check(ctx, target, level, internalFormat,
|
||||
format, type, 2,
|
||||
|
||||
Reference in New Issue
Block a user