diff --git a/.pick_status.json b/.pick_status.json index 1eef26efb16..4a2cfbc10fb 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -1254,7 +1254,7 @@ "description": "panfrost: correct first-tracking for signature", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "4da88060d0a3662a579a26748d7e3458c1b4800d", "notes": null diff --git a/src/panfrost/lib/pan_blitter.c b/src/panfrost/lib/pan_blitter.c index 84bcba6361f..9ffe0c16acc 100644 --- a/src/panfrost/lib/pan_blitter.c +++ b/src/panfrost/lib/pan_blitter.c @@ -457,10 +457,11 @@ pan_blitter_get_blit_shader(struct panfrost_device *dev, coord_comps = MAX2(coord_comps, (key->surfaces[i].dim ?: 3) + (key->surfaces[i].array ? 1 : 0)); - first = false; - if (sig_offset >= sizeof(sig)) + if (sig_offset >= sizeof(sig)) { + first = false; continue; + } sig_offset += snprintf(sig + sig_offset, sizeof(sig) - sig_offset, @@ -468,6 +469,8 @@ pan_blitter_get_blit_shader(struct panfrost_device *dev, first ? "" : ",", gl_frag_result_name(key->surfaces[i].loc), type_str, dim_str, key->surfaces[i].array ? "[]" : "", key->surfaces[i].src_samples, key->surfaces[i].dst_samples); + + first = false; } nir_builder b = nir_builder_init_simple_shader(