Subject: Re: [BUG] Error while trying to git apply a patch; works with patch -p1

From: SZEDER Gábor <[email-masked]>
Date: Thu, 4 Oct 2018 23:45:33 +0200

On Thu, Oct 04, 2018 at 06:01:11PM -0300, Eneas Queiroz wrote:
> I've sent this to the list 2 days ago, but I can't find it in the list
> archives, so I'm sending it again without files attached.  I apologize
> if this is a duplicate. One should be able to reproduce this with the
> current PR files, but if not, I can provide them.
> 
> I've hit a strange error while trying to apply a patch from github
> here: https://github.com/openwrt/openwrt/pull/965
> 
> 965.patch:452: trailing whitespace.
> 
> 965.patch:559: space before tab in indent.
>              -o $(SHLIBNAME_FULL) \
> 965.patch:560: space before tab in indent.
>              $$ALLSYMSFLAGS $$SHOBJECTS $$NOALLSYMSFLAGS $$LIBDEPS; \
> 965.patch:564: space before tab in indent.
>         -o $(SHLIBNAME_FULL) \
> 965.patch:2334: trailing whitespace.
> 
> error: package/libs/openssl/patches/100-Configure-afalg-support.patch:
> No such file or directory
> error: package/libs/openssl/patches/110-openwrt_targets.patch: No such
> file or directory
> error: package/libs/openssl/patches/120-fix_link_segfault.patch: No
> such file or directory
> error: package/libs/openssl/patches/1.1.0/100-Configure-afalg-support.patch:
> No such file or directory
> error: package/libs/openssl/patches/1.1.0/110-openwrt_targets.patch:
> No such file or directory
> 
> If you get the patch file from
> https://github.com/openwrt/openwrt/pull/965.patch and apply it with
> git apply, it fails.  If I apply the same file with patch -p1, it
> works fine.  I've tried it with git 2.16.4 and 2.19, and they both
> fail with the same error, and at least 2 more people have confirmed
> it.
> 
> git apply fails even when using git format-patch -13 --stdout as a
> source, so it is not github doing something weird.
> 
> The file is a series of 13 patches.  If I split the series after the

So this is no _a_ patch, then, but a mailbox of patches.  'git apply'
is supposed to apply a single a patch; apparently 'patch' is more
lenient.

Have you tried 'git am'?

> 3rd patch, it works.
> Also, if I use https://github.com/openwrt/openwrt/pull/965.diff, it also works.
> 
> I'm not subscribed to the list, so please CC me.
> 
> Cheers,
> 
> Eneas