On Tue, Nov 13, 2012 at 4:30 AM, Michel Dänzer <[email protected]> wrote: > On Mon, 2012-11-12 at 16:11 -0500, [email protected] wrote: >> From: Jerome Glisse <[email protected]> >> >> exa state that we should use the pixmap to get the width, height and >> pitch to use when setting up texture (see exa.h). This fix a rare case >> where picture->pDrawable->(width|height) > pixmap->drawable.(width|height) >> >> v2: keep special case for solid >> >> Signed-off-by: Jerome Glisse <[email protected]> >> --- >> src/evergreen_exa.c | 4 ++-- >> src/r600_exa.c | 4 ++-- >> src/radeon_exa_render.c | 12 ++++++------ >> 3 files changed, 10 insertions(+), 10 deletions(-) >> >> diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c >> index 883fa5c..10c53d0 100644 >> --- a/src/evergreen_exa.c >> +++ b/src/evergreen_exa.c >> @@ -844,8 +844,8 @@ static Bool EVERGREENTextureSetup(PicturePtr pPict, >> PixmapPtr pPix, >> >> /* Texture */ >> if (pPict->pDrawable) { >> - tex_res.w = pPict->pDrawable->width; >> - tex_res.h = pPict->pDrawable->height; >> + tex_res.w = pPix->drawable.width; >> + tex_res.h = pPix->drawable.height; > > I doubt this is quite right yet... > > E.g. if pPict->pDrawable is a window which is smaller than the backing > pixmap (which I'd expect to be a common case for window pictures), this > should still use pPict->pDrawable->width/height? (But that probably > still isn't enough if the window origin doesn't lie at the pixmap > origin...) > > OTOH if the pixmap is smaller than the window, I don't think this change > will do the right thing for RepeatNormal or RepeatReflect. > > Not sure rendercheck tests such corner cases at all yet. >
Intel always use pixmap size no matter what and exa header says to use it. I am totaly lost in the Xorg pixmap, drawable, window thing but I don't see how the window origin would not be at pixmap origin. Cheers, Jerome _______________________________________________ xorg-driver-ati mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-driver-ati
