summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNicolai Haehnle <[email protected]>2005-05-13 21:29:17 +0000
committerNicolai Haehnle <[email protected]>2005-05-13 21:29:17 +0000
commit296428dcf49cee49ce525baa52628466afbb1fc6 (patch)
treef6ec64c62aae78565bab2a03119941a877a909ba
parentee83a1302fc54b82f496133d9bcc34426baa7acb (diff)
Make software fallbacks work again:
We need to plug in swsetup functions into the TNL module's callbacks. Also, resize the framebuffer size when the drawable size changes.
-rw-r--r--src/mesa/drivers/dri/r300/r300_context.c1
-rw-r--r--src/mesa/drivers/dri/r300/radeon_lock.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_context.c b/src/mesa/drivers/dri/r300/r300_context.c
index a1dff1177da..bcfbe2b6c8d 100644
--- a/src/mesa/drivers/dri/r300/r300_context.c
+++ b/src/mesa/drivers/dri/r300/r300_context.c
@@ -299,6 +299,7 @@ GLboolean r300CreateContext(const __GLcontextModes * glVisual,
_ac_CreateContext(ctx);
_tnl_CreateContext(ctx);
_swsetup_CreateContext(ctx);
+ _swsetup_Wakeup(ctx);
_ae_create_context(ctx);
/* Install the customized pipeline:
diff --git a/src/mesa/drivers/dri/r300/radeon_lock.c b/src/mesa/drivers/dri/r300/radeon_lock.c
index 8f9fd8e388d..3c7fc72a426 100644
--- a/src/mesa/drivers/dri/r300/radeon_lock.c
+++ b/src/mesa/drivers/dri/r300/radeon_lock.c
@@ -40,6 +40,8 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "radeon_ioctl.h"
#include "radeon_state.h"
+#include "framebuffer.h"
+
#if DEBUG_LOCKING
char *prevLockFile = NULL;
int prevLockLine = 0;
@@ -102,6 +104,10 @@ static void r300RegainedLock(radeonContextPtr radeon)
__DRIdrawablePrivate *dPriv = radeon->dri.drawable;
if (radeon->lastStamp != dPriv->lastStamp) {
+ _mesa_resize_framebuffer(radeon->glCtx,
+ (GLframebuffer*)dPriv->driverPrivate,
+ dPriv->w, dPriv->h);
+
radeonUpdatePageFlipping(radeon);
if (radeon->glCtx->DrawBuffer->_ColorDrawBufferMask[0] == BUFFER_BIT_BACK_LEFT)