summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCooper Yuan <cooperyuan@gmail.com>2009-06-26 17:04:53 +0800
committerCooper Yuan <cooperyuan@gmail.com>2009-06-26 17:04:53 +0800
commitd1bc9a29b9fe9400681221b38639e12536dd6dbf (patch)
tree5fed382dcf8d4325aa40c2c3025fdc43e3d7aade /src
parenteaadba6eee05cd725295821e0c1f5e1a01e99e89 (diff)
Fix viewport issue
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r600/r700_render.c4
-rw-r--r--src/mesa/drivers/dri/r600/r700_state.c3
2 files changed, 6 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/r600/r700_render.c b/src/mesa/drivers/dri/r600/r700_render.c
index e46b21c85c..b496543e1d 100644
--- a/src/mesa/drivers/dri/r600/r700_render.c
+++ b/src/mesa/drivers/dri/r600/r700_render.c
@@ -44,6 +44,7 @@
#include "tnl/t_vertex.h"
#include "tnl/t_pipeline.h"
+#include "radeon_lock.h"
#include "r600_context.h"
#include "r600_cmdbuf.h"
@@ -295,6 +296,9 @@ static GLboolean r700RunRender(GLcontext * ctx,
/* flush vtx */
//r700SyncSurf(context); /* */
+ LOCK_HARDWARE( &context->radeon );
+ UNLOCK_HARDWARE( &context->radeon );
+
r700SendContextStates(context);
r700SendViewportState(context, 0);
r700SendRenderTargetState(context, 0);
diff --git a/src/mesa/drivers/dri/r600/r700_state.c b/src/mesa/drivers/dri/r600/r700_state.c
index b22e1765a3..a98ffedba0 100644
--- a/src/mesa/drivers/dri/r600/r700_state.c
+++ b/src/mesa/drivers/dri/r600/r700_state.c
@@ -562,6 +562,8 @@ static void r700UpdateWindow(GLcontext * ctx, int id) //--------------------
r700->viewport[id].PA_CL_VPORT_ZOFFSET.f32All = tz;
r700->viewport[id].enabled = GL_TRUE;
+
+ r700SetScissor(context);
}
@@ -615,7 +617,6 @@ void r700SetScissor(context_t *context) //---------------
rrb = radeon_get_colorbuffer(&context->radeon);
if (!rrb || !rrb->bo) {
- fprintf(stderr, "no rrb\n");
return;
}
if (context->radeon.state.scissor.enabled) {