mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-01-27 14:10:25 +01:00
llvmpipe: clamp surface clear geometry
avoid oob writes to avoid crashing
cc: mesa-stable
Reviewed-by: Dave Airlie <airlied@redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14655>
(cherry picked from commit 165a880f1a)
This commit is contained in:
parent
3fc09b282a
commit
e6e021dc5f
2 changed files with 7 additions and 1 deletions
|
|
@ -958,7 +958,7 @@
|
|||
"description": "llvmpipe: clamp surface clear geometry",
|
||||
"nominated": true,
|
||||
"nomination_type": 0,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null
|
||||
},
|
||||
|
|
|
|||
|
|
@ -311,6 +311,9 @@ llvmpipe_clear_render_target(struct pipe_context *pipe,
|
|||
if (render_condition_enabled && !llvmpipe_check_render_cond(llvmpipe))
|
||||
return;
|
||||
|
||||
width = MIN2(width, dst->texture->width0 - dstx);
|
||||
height = MIN2(height, dst->texture->height0 - dsty);
|
||||
|
||||
if (dst->texture->nr_samples > 1) {
|
||||
struct pipe_box box;
|
||||
u_box_2d(dstx, dsty, width, height, &box);
|
||||
|
|
@ -379,6 +382,9 @@ llvmpipe_clear_depth_stencil(struct pipe_context *pipe,
|
|||
if (render_condition_enabled && !llvmpipe_check_render_cond(llvmpipe))
|
||||
return;
|
||||
|
||||
width = MIN2(width, dst->texture->width0 - dstx);
|
||||
height = MIN2(height, dst->texture->height0 - dsty);
|
||||
|
||||
if (dst->texture->nr_samples > 1) {
|
||||
uint64_t zstencil = util_pack64_z_stencil(dst->format, depth, stencil);
|
||||
struct pipe_box box;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue