Uploaded image for project: 'Subversion'
  1. Subversion
  2. SVN-4610

svn patch - improve detection of reversed or already-applied patches

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • 1.8.15, 1.9.3
    • None
    • libsvn_client
    • None

    Description

      svn patch sometimes fails to detect when a patch has already been applied, whereas GNU patch does detect that and warn.

      This example involves a patch that is applied with fuzz and offset. This was observed and reported by one of WANdisco's customers, with a real patch to some *BSD source code; I have reduced one of their test cases to a small abstract example here.

      Example:

      file1
      A
      B
      C
      D
      
      E
      
      F
      
      G
      
      patch1
      Index: file1
      ===================================================================
      --- file1       (revision 1)
      +++ file1       (working copy)
      @@ -7,6 +7,8 @@
       C
       D
      
      +E
      +
       F
      
       G
      
      test.log
      $ svn --version -q
      1.9.3
      $ svn patch patch1
      U         file1
      >         applied hunk @@ -7,6 +7,8 @@ with offset -2 and fuzz 2
      $ svn revert -q file1
      $ patch --version | head -1
      GNU patch 2.7.1
      $ patch < patch1
      patching file file1
      Reversed (or previously applied) patch detected!  Assume -R? [n] 
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            julianfoad Julian Foad
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: