Hi Junio, On Wed, 23 Sep 2020, Junio C Hamano wrote: > Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes: > > > I believe that that is exactly the reason why we want this: > > > > - same_contents = oideq(&one->oid, &two->oid); > > + same_contents = one->oid_valid && two->oid_valid ? > > oideq(&one->oid, &two->oid) : !strcmp(one->data, two->data); > > Not quite. The other side should either be > > one->size == two->size && !memcmp(...) Right! Thank you for correcting my mistake, Dscho > > or just left to false, as the downstream code must be prepared for > same_contents being false even when one and two turns out to be > not-byte-for-byte-same but equivalent anyway.