From: Junio C Hamano Date: Fri, 05 Dec 2025 07:22:48 GMT Subject: Re: [PATCH] gitk: fix history window panes position Message-ID: In-Reply-To: Johannes Sixt writes: > Ah! You are absolutely right! Clearly, I wasn't fully taking in what > git-am was telling me. The problem isn't the encoding. It's the patch > text itself, in particular, the single SP needed for empty context lines > is missing. I do not think that is the case, either. diff.suppressBlankEmpty is part of Git for quite some time. The "empty context lines can be expressed as a totally empty line" was started at GNU IIRC, but I think POSIX allows it these days. And we can take it, as you found out with your "bla.patch" experiment below. > I get this error when I apply the mbox containing the complete email: > > $ git am -3 --signoff ~/Mail/ambox > warning: quoted CRLF detected > Applying: gitk: fix history window panes position > error: corrupt patch at line 40 > error: could not build fake ancestor > Patch failed at 0001 gitk: fix history window panes position > hint: Use 'git am --show-current-patch=diff' to see the failed patch > hint: [...] > > But it is OK to copy the email body text to a file (which looks like > mbox text) and apply that, despite the missing SP: > > $ git am -3 --signoff bla.patch > Applying: gitk: fix history window panes position > Using index info to reconstruct a base tree... > A gitk-git/gitk > Falling back to patching base and 3-way merge... > > Why is that? So the reason you seek is because you are barking up a wrong tree? There probably is something wrong in the patch text that has nothing to do with diff.suppressBlankEmpty that you somehow "fixed" without knowing when you massaged the e-mail message into the "bla.patch" text yourself manually, if I have to guess.