diff options
Diffstat (limited to 'lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c')
-rw-r--r-- | lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c b/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c index aaf6a80e8..35f3618e8 100644 --- a/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c +++ b/lib/mesa/src/gallium/drivers/llvmpipe/lp_context.c @@ -179,12 +179,13 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv, { struct llvmpipe_context *llvmpipe; + if (!llvmpipe_screen_late_init(llvmpipe_screen(screen))) + return NULL; + llvmpipe = align_malloc(sizeof(struct llvmpipe_context), 16); if (!llvmpipe) return NULL; - util_init_math(); - memset(llvmpipe, 0, sizeof *llvmpipe); make_empty_list(&llvmpipe->fs_variants_list); @@ -283,6 +284,9 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv, draw_wide_point_threshold(llvmpipe->draw, 10000.0); draw_wide_line_threshold(llvmpipe->draw, 10000.0); + /* initial state for clipping - enabled, with no guardband */ + draw_set_driver_clipping(llvmpipe->draw, FALSE, FALSE, FALSE, TRUE); + lp_reset_counters(); /* If llvmpipe_set_scissor_states() is never called, we still need to |