Stefan Dirsch
b08e09e454
Fixes most of intel SandyBridge rendering issues. - Set Mesa version to 7.9.801 - obsoletes commit-d316391.diff - adjusted 0001-Fix-crash-in-swrast-when-setting-a-texture-for-a-pix.patch OBS-URL: https://build.opensuse.org/package/show/X11:XOrg/Mesa?expand=0&rev=142
35 lines
1.5 KiB
Diff
35 lines
1.5 KiB
Diff
From 761ca4b98dfe7440402aa8e24defc2c881975f07 Mon Sep 17 00:00:00 2001
|
|
From: Egbert Eich <eich@suse.de>
|
|
Date: Fri, 5 Nov 2010 08:00:12 +0100
|
|
Subject: [PATCH] Fix crash in swrast when setting a texture for a pixmap.
|
|
|
|
When getImage() is called in swrastSetTexBuffer2() there will be
|
|
a crash somewhere down the line since texImage->Data isn't initialized
|
|
which holds a pointer to the destination.
|
|
To initialize texImage->Data we call ctx->Driver.TexImage2D().
|
|
---
|
|
Mesa-7.9/src/mesa/drivers/dri/swrast/swrast.c | 5 +++++
|
|
1 files changed, 5 insertions(+), 0 deletions(-)
|
|
|
|
--- Mesa-7.9.801-32218e4/src/mesa/drivers/dri/swrast/swrast.c.orig 2010-12-16 15:53:09.000000000 +0100
|
|
+++ Mesa-7.9.801-32218e4/src/mesa/drivers/dri/swrast/swrast.c 2010-12-20 15:48:03.000000000 +0100
|
|
@@ -61,6 +61,7 @@
|
|
static void swrastSetTexBuffer2(__DRIcontext *pDRICtx, GLint target,
|
|
GLint texture_format, __DRIdrawable *dPriv)
|
|
{
|
|
+ GET_CURRENT_CONTEXT(ctx);
|
|
struct dri_context *dri_ctx;
|
|
int x, y, w, h;
|
|
__DRIscreen *sPriv = dPriv->driScreenPriv;
|
|
@@ -90,6 +91,10 @@ static void swrastSetTexBuffer2(__DRIcon
|
|
_mesa_init_teximage_fields(&dri_ctx->Base, target, texImage,
|
|
w, h, 1, 0, internalFormat, texFormat);
|
|
|
|
+ ctx->Driver.TexImage2D(ctx, target, 0, internalFormat,
|
|
+ w, h, 0, texture_format, GL_UNSIGNED_INT_8_8_8_8,
|
|
+ NULL, &ctx->Unpack, texObj, texImage);
|
|
+
|
|
sPriv->swrast_loader->getImage(dPriv, x, y, w, h, (char *)texImage->Data,
|
|
dPriv->loaderPrivate);
|
|
|