On Thu, 20 Mar 2025 at 10:18, Patrick Steinhardt <ps@xxxxxx> wrote: > > On Wed, Mar 19, 2025 at 08:23:38AM +0100, Martin Ågren wrote: > Yeah, I agree. It's very surprising that we retain only a subset of > state, and that does feel like a bug to me. > > > c->pad.flush_type = no_flush; > > + c->pad.truncate = trunc_none; > > + c->pad.padding = 0; > > return total_consumed; > > } > > This is using the same default values now as you started to use in the > preceding commit. It might make sense to introduce a macro or function > to initialize the structure so that we don't duplicate initialization. Good point. I'll make the preceding commit use a new `padding_args_clear()`, then reuse it here. BTW, we rely on initializing the struct with all-zeroes to put it in this cleared state. Which is true, since the "none"/"no" enum members are indeed zero. That's not explicit though. I'm thinking of adding a preparatory patch to make `no_flush` and `trunc_none` be explicitly zero, and see if there are other such enum values in this file. Martin