Created attachment 189342 [details] patch against ports Hi, Please do an exp-run on -HEAD with the attached patches against the ports tree and src tree. The ports patch is just an experimental 'make sure it really does work' for rubygem-grpc since it's been worked around, and not intended for commit later. The following review is open for this: https://reviews.freebsd.org/D13738 Thanks!
Created attachment 189343 [details] patch against src/head
(In reply to Kyle Evans from comment #1) Oh shoot, that looked like a question mark. Apologies =)
The exp-run looks fine. Note however that the ports patch can't be committed until all supported releases of FreeBSD work with it.
A commit references this bug: Author: kevans Date: Thu Jan 11 15:01:48 UTC 2018 New revision: 327826 URL: https://svnweb.freebsd.org/changeset/base/327826 Log: patch(1): Don't check for NUL bytes in Plan A Plan A mmap()'s the entire input file and operates on it in memory. The map(2) call succeeded, so we shouldn't need to bother checking for the NUL byte as long as we're within our buffer space. This was clearly intentional to match "the behavior of the original code", but it creates a discrepancy between Plan A and Plan B that doesn't seem sensible and it's not inherently wrong to allow a NUL byte. This change was motivated by the gemspec in net/rubygem-grpc failing to patch, despite the patch being generated with diff, because a NUL byte was used as a delimiter in the header briefly in an otherwise text file. An alternative was considered: to fallback to plan B if plan A won't process the entire file due to a NUL byte, but I deemed this to be the better option since plan A isn't failing due to memory limitations and will fail later on if it's really dealing with a file it shouldn't be. PR: 224842 (exp-run) Reported by: swills Reviewed by: emaste, pfg MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D13738 Changes: head/usr.bin/patch/inp.c
Indeed- as indicated in the initial post, the ports patch was mostly for a proof of "it actually fixes the initial problem." =)