diff --git a/autogen.sh b/autogen.sh old mode 100755 new mode 100644 diff --git a/src/evergreen_exa.c b/src/evergreen_exa.c index 354f1a4..48b3137 100644 --- a/src/evergreen_exa.c +++ b/src/evergreen_exa.c @@ -798,24 +798,24 @@ static void EVERGREENXFormSetup(PicturePtr pPict, PixmapPtr pPix, vs_alu_consts[0 + const_offset] = xFixedToFloat(pPict->transform->matrix[0][0]); vs_alu_consts[1 + const_offset] = xFixedToFloat(pPict->transform->matrix[0][1]); vs_alu_consts[2 + const_offset] = xFixedToFloat(pPict->transform->matrix[0][2]); - vs_alu_consts[3 + const_offset] = 1.0 / pPict->pDrawable->width; + vs_alu_consts[3 + const_offset] = 1.0 / (pPict->pDrawable ? pPict->pDrawable->width : 1.0); vs_alu_consts[4 + const_offset] = xFixedToFloat(pPict->transform->matrix[1][0]); vs_alu_consts[5 + const_offset] = xFixedToFloat(pPict->transform->matrix[1][1]); vs_alu_consts[6 + const_offset] = xFixedToFloat(pPict->transform->matrix[1][2]); - vs_alu_consts[7 + const_offset] = 1.0 / pPict->pDrawable->height; + vs_alu_consts[7 + const_offset] = 1.0 / (pPict->pDrawable ? pPict->pDrawable->height : 1.0); } else { accel_state->is_transform[unit] = FALSE; vs_alu_consts[0 + const_offset] = 1.0; vs_alu_consts[1 + const_offset] = 0.0; vs_alu_consts[2 + const_offset] = 0.0; - vs_alu_consts[3 + const_offset] = 1.0 / pPict->pDrawable->width; + vs_alu_consts[3 + const_offset] = 1.0 / (pPict->pDrawable ? pPict->pDrawable->width : 1.0); vs_alu_consts[4 + const_offset] = 0.0; vs_alu_consts[5 + const_offset] = 1.0; vs_alu_consts[6 + const_offset] = 0.0; - vs_alu_consts[7 + const_offset] = 1.0 / pPict->pDrawable->height; + vs_alu_consts[7 + const_offset] = 1.0 / (pPict->pDrawable ? pPict->pDrawable->height : 1.0); } }