On Thu, Feb 09 2023, Calvin Wan wrote: > + diff_change(options, oldmode, newmode, > + old_oid, new_oid, > + !is_null_oid(old_oid), > + !is_null_oid(new_oid), > + ce->name, 0, dirty_submodule); Nit: This has odd not-our-usual-style indentation (to align with the "("). I didn't spot it before, but I vaguely recall seeing something like this in another one of your patches, but maybe I misrecall. In case not maybe some editor settings need tweaking? I haven't looked carefully at the rest to see if the same issue occurs in other code here. > - if (!changed && !dirty_submodule) { > - ce_mark_uptodate(ce); > - mark_fsmonitor_valid(istate, ce); > - if (!revs->diffopt.flags.find_copies_harder) > - continue; > - } > - oldmode = ce->ce_mode; > - old_oid = &ce->oid; > - new_oid = changed ? null_oid() : &ce->oid; > - diff_change(&revs->diffopt, oldmode, newmode, > - old_oid, new_oid, > - !is_null_oid(old_oid), > - !is_null_oid(new_oid), > - ce->name, 0, dirty_submodule); So in this case it's not new code, but code moving, note the four spaces after the sequence of tabs that aren't in your version. So perhaps your editor on re-indentation is configured not to just strip off the leading \t to re-indent (which is all that's needed here) but strips all whitespace, then re-indents after its own mind?