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

svn diff --summarize -c N produces invalid output against dirs added in rN.

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.7.x
    • Fix Version/s: 1.7.x
    • Component/s: libsvn_client
    • Labels:
      None

      Description

      $ svnadmin create repo
      $ svn co file://`pwd`/repo wc
      Checked out revision 0.
      $ svn mkdir wc/trunk
      A         wc/trunk
      $ svn ci wc -mm
      Adding         wc/trunk
      
      Committed revision 1.
      $ svn diff --summarize file://`pwd`/repo -c 1
      A       file:///Users/breser/diff-summarize/repo/trunk
      $ svn diff --summarize file://`pwd`/repo/trunk -c 1
      A       file:///Users/breser/diff-summarize/repo/trunk/trunk
      
      Note that trunk is repeated on the second summarize command.  This is because the trunk does not exist in r0 so the editor drive is 
      the rooted at the root of the repository.  As such the reported path is "trunk" and the code in the summarize_function combines the 
      URL with the  reported path and trunk gets repeated.
      
      This is related to issue #2765 which is the same problem except for a file.  However at the time that bug was fixed this problem was 
      not possible because the requested path had to exist in both revisions.  Issue #2873 solved that and allowed this situation to exist.
      
      1.8.x and newer are not impacted because when diff --summarize was rewritten to function with not just two repos paths this issue 
      was fixed as a side effect.
      

        Attachments

          Activity

            People

            • Assignee:
              breser Ben Reser
              Reporter:
              breser Ben Reser
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: