diff --git a/.pick_status.json b/.pick_status.json index 5f7b1b413f9..27e2b54ace5 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -4034,7 +4034,7 @@ "description": "freedreno/a6xx: Fix UB in convert_color()", "nominated": true, "nomination_type": 2, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "76e350671f3ba2d8ccbe6851de868d8897a8bb98", "notes": null diff --git a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc index b8adfdacd1c..574e9cc83a4 100644 --- a/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc +++ b/src/gallium/drivers/freedreno/a6xx/fd6_blitter.cc @@ -862,6 +862,9 @@ convert_color(enum pipe_format format, union pipe_color_union *pcolor) for (unsigned i = 0; i < 4; i++) { unsigned channel = desc->swizzle[i]; + if (channel >= 4) /* PIPE_SWIZZLE_0/_1 */ + continue; + if (desc->channel[channel].normalized) continue;