2012/10/19 Michel Dänzer <mic...@daenzer.net>: > From: Michel Dänzer <michel.daen...@amd.com> > > Fixes WebGL texture mips conformance test, no piglit regressions. > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44912 > > NOTE: This is a candidate for the stable branches. > > Signed-off-by: Michel Dänzer <michel.daen...@amd.com>
Tested-by: Andreas Boll <andreas.boll....@gmail.com> I've tested this patch with r600g (rv770), llvmpipe and softpipe. Now r600g passes all WebGL conformance tests! Thank you very much! P.S.: I'll test the patch on 9.0 and 8.0 branch > --- > src/mesa/state_tracker/st_cb_texture.c | 12 ++++++++---- > 1 file changed, 8 insertions(+), 4 deletions(-) > > diff --git a/src/mesa/state_tracker/st_cb_texture.c > b/src/mesa/state_tracker/st_cb_texture.c > index 218c8d1..d947836 100644 > --- a/src/mesa/state_tracker/st_cb_texture.c > +++ b/src/mesa/state_tracker/st_cb_texture.c > @@ -1112,12 +1112,16 @@ copy_image_data_to_texture(struct st_context *st, > if (stImage->pt) { > /* Copy potentially with the blitter: > */ > - GLuint src_level; > - if (stImage->pt != stObj->pt) > - src_level = 0; > - else > + GLuint src_level = 0; > + > + if (stImage->pt->last_level > 0) { > src_level = stImage->base.Level; > > + assert(src_level <= stImage->pt->last_level); > + assert(u_minify(stImage->pt->width0, src_level) == > stImage->base.Width); > + assert(u_minify(stImage->pt->height0, src_level) == > stImage->base.Height); > + } > + > st_texture_image_copy(st->pipe, > stObj->pt, dstLevel, /* dest texture, level */ > stImage->pt, src_level, /* src texture, level */ > -- > 1.7.10.4 > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/mesa-dev _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev