diff options
author | marha <marha@users.sourceforge.net> | 2012-03-08 11:31:50 +0100 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-03-08 11:31:50 +0100 |
commit | ceca11a64938e803d2e0d8ccfc030357c3a0121c (patch) | |
tree | cd5e20638fed3446ac99e4c3d29809ef07b28d18 /mesalib/src/mesa/drivers/common/meta.c | |
parent | 8db4c7567d495ef6f6162406394ac192e6c2cfe7 (diff) | |
parent | b4e09d9f9c2cb930daef6b578e3051e71425ed7f (diff) | |
download | vcxsrv-ceca11a64938e803d2e0d8ccfc030357c3a0121c.tar.gz vcxsrv-ceca11a64938e803d2e0d8ccfc030357c3a0121c.tar.bz2 vcxsrv-ceca11a64938e803d2e0d8ccfc030357c3a0121c.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
pixman/pixman/pixman-mmx.c
Diffstat (limited to 'mesalib/src/mesa/drivers/common/meta.c')
-rw-r--r-- | mesalib/src/mesa/drivers/common/meta.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/mesalib/src/mesa/drivers/common/meta.c b/mesalib/src/mesa/drivers/common/meta.c index 6c8495ddb..95336fc28 100644 --- a/mesalib/src/mesa/drivers/common/meta.c +++ b/mesalib/src/mesa/drivers/common/meta.c @@ -174,15 +174,19 @@ struct save_state struct gl_query_object *CondRenderQuery; GLenum CondRenderMode; +#if FEATURE_feedback /** MESA_META_SELECT_FEEDBACK */ GLenum RenderMode; struct gl_selection Select; struct gl_feedback Feedback; +#endif /** Miscellaneous (always disabled) */ GLboolean Lighting; GLboolean RasterDiscard; +#if FEATURE_EXT_transform_feedback GLboolean TransformFeedbackNeedsResume; +#endif }; /** @@ -425,6 +429,7 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) memset(save, 0, sizeof(*save)); save->SavedState = state; +#if FEATURE_EXT_transform_feedback /* Pausing transform feedback needs to be done early, or else we won't be * able to change other state. */ @@ -433,6 +438,7 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) !ctx->TransformFeedback.CurrentObject->Paused; if (save->TransformFeedbackNeedsResume) _mesa_PauseTransformFeedback(); +#endif if (state & MESA_META_ALPHA_TEST) { save->AlphaEnabled = ctx->Color.AlphaEnabled; @@ -700,6 +706,7 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_EndConditionalRender(); } +#if FEATURE_feedback if (state & MESA_META_SELECT_FEEDBACK) { save->RenderMode = ctx->RenderMode; if (ctx->RenderMode == GL_SELECT) { @@ -710,6 +717,7 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_RenderMode(GL_RENDER); } } +#endif /* misc */ { @@ -984,6 +992,7 @@ _mesa_meta_end(struct gl_context *ctx) save->CondRenderMode); } +#if FEATURE_feedback if (state & MESA_META_SELECT_FEEDBACK) { if (save->RenderMode == GL_SELECT) { _mesa_RenderMode(GL_SELECT); @@ -993,6 +1002,7 @@ _mesa_meta_end(struct gl_context *ctx) ctx->Feedback = save->Feedback; } } +#endif /* misc */ if (save->Lighting) { @@ -1001,8 +1011,10 @@ _mesa_meta_end(struct gl_context *ctx) if (save->RasterDiscard) { _mesa_set_enable(ctx, GL_RASTERIZER_DISCARD, GL_TRUE); } +#if FEATURE_EXT_transform_feedback if (save->TransformFeedbackNeedsResume) _mesa_ResumeTransformFeedback(); +#endif } |