Instead of calling _mesa_ResizeBuffersMESA() in the Viewport function,

call driUpdateFramebufferSize() when we detect changes in window size/
position in radeonGetLock().
This commit is contained in:
Brian Paul 2005-09-14 00:10:27 +00:00
parent 9ae952a88c
commit e42a31350d
2 changed files with 3 additions and 7 deletions

View file

@ -35,6 +35,7 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
#include "glheader.h"
#include "mtypes.h"
#include "radeon_context.h"
#include "radeon_lock.h"
#include "radeon_tex.h"
@ -60,7 +61,6 @@ radeonUpdatePageFlipping( radeonContextPtr rmesa )
}
/* Update the hardware state. This is called if another context has
* grabbed the hardware lock, which includes the X server. This
* function also updates the driver's window state after the X server
@ -91,6 +91,7 @@ void radeonGetLock( radeonContextPtr rmesa, GLuint flags )
radeonUpdatePageFlipping( rmesa );
radeonSetCliprects( rmesa );
radeonUpdateViewportOffset( rmesa->glCtx );
driUpdateFramebufferSize(rmesa->glCtx, dPriv);
rmesa->lastStamp = dPriv->lastStamp;
}

View file

@ -37,15 +37,13 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include "imports.h"
#include "api_arrayelt.h"
#include "enums.h"
#include "colormac.h"
#include "light.h"
#include "state.h"
#include "buffers.h"
#include "context.h"
#include "array_cache/acache.h"
#include "tnl/tnl.h"
#include "tnl/t_pipeline.h"
#include "main/light.h"
#include "swrast_setup/swrast_setup.h"
#include "radeon_context.h"
@ -1501,12 +1499,9 @@ void radeonUpdateWindow( GLcontext *ctx )
}
static void radeonViewport( GLcontext *ctx, GLint x, GLint y,
GLsizei width, GLsizei height )
{
/* update size of Mesa/software ancillary buffers */
_mesa_ResizeBuffersMESA();
/* Don't pipeline viewport changes, conflict with window offset
* setting below. Could apply deltas to rescue pipelined viewport
* values, or keep the originals hanging around.