[intel] fix random ut2004 crash on some machine, for cubemap textures,

image offset is already considered when map, add it again in
        StoreImage may lead to wrong result and crash.
This commit is contained in:
Zou Nan hai
2008-02-25 15:27:47 +08:00
parent 5b6ca237ee
commit 1d14da9a89
@@ -375,9 +375,13 @@ intel_miptree_image_map(struct intel_context * intel,
if (row_stride)
*row_stride = mt->pitch * mt->cpp;
if (image_offsets)
memcpy(image_offsets, mt->level[level].image_offset,
mt->level[level].depth * sizeof(GLuint));
if (image_offsets) {
if (mt->target == GL_TEXTURE_CUBE_MAP_ARB)
memset(image_offsets, 0, mt->level[level].depth * sizeof(GLuint));
else
memcpy(image_offsets, mt->level[level].image_offset,
mt->level[level].depth * sizeof(GLuint));
}
return (intel_region_map(intel, mt->region) +
intel_miptree_image_offset(mt, face, level));