• Show log

    Commit

  • Hash : de7659cc
    Author : Patrick Steinhardt
    Date : 2019-11-10T18:44:56

    patch_parse: use paths from "---"/"+++" lines for binary patches
    
    For some patches, it is not possible to derive the old and new file
    paths from the patch header's first line, most importantly when they
    contain spaces. In such a case, we derive both paths from the "---" and
    "+++" lines, which allow for non-ambiguous parsing. We fail to use these
    paths when parsing binary patches without data, though, as we always
    expect the header paths to be filled in.
    
    Fix this by using the "---"/"+++" paths by default and only fall back to
    header paths if they aren't set. If neither of those paths are set, we
    just return an error. Add two tests to verify this behaviour, one of
    which would have previously caused a segfault.