summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
diff options
context:
space:
mode:
authorNian Wu <nian.wu@intel.com>2007-03-12 09:03:27 +0800
committerNian Wu <nian.wu@intel.com>2007-03-12 09:03:27 +0800
commit5a5b55943dfdb7fac77f7556058791302ee8639b (patch)
tree7bcaea81b25884b6e6516d1df47f671247964276 /src/mesa/drivers/dri/i915tex/i915_tex_layout.c
parent1e055089a37bca8bc5e1cec37d5559fcdb0cf21f (diff)
parent61ec23cc63a040a2edf1bc466917e85362514c89 (diff)
Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline
Diffstat (limited to 'src/mesa/drivers/dri/i915tex/i915_tex_layout.c')
-rw-r--r--src/mesa/drivers/dri/i915tex/i915_tex_layout.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i915tex/i915_tex_layout.c b/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
index c844f5351d..2e1600cfdf 100644
--- a/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
+++ b/src/mesa/drivers/dri/i915tex/i915_tex_layout.c
@@ -190,6 +190,9 @@ i945_miptree_layout(struct intel_mipmap_tree * mt)
case GL_TEXTURE_CUBE_MAP:{
const GLuint dim = mt->width0;
GLuint face;
+ GLuint lvlWidth = mt->width0, lvlHeight = mt->height0;
+
+ assert(lvlWidth == lvlHeight); /* cubemap images are square */
/* Depending on the size of the largest images, pitch can be
* determined either by the old-style packing of cubemap faces,
@@ -204,11 +207,13 @@ i945_miptree_layout(struct intel_mipmap_tree * mt)
/* Set all the levels to effectively occupy the whole rectangular region.
*/
- for (level = mt->first_level; level <= mt->last_level; level++)
+ for (level = mt->first_level; level <= mt->last_level; level++) {
intel_miptree_set_level_info(mt, level, 6,
0, 0,
- mt->pitch, mt->total_height, 1);
-
+ lvlWidth, lvlHeight, 1);
+ lvlWidth /= 2;
+ lvlHeight /= 2;
+ }
for (face = 0; face < 6; face++) {