Comment #2 on issue 3024 by sudhir.s...@gmail.com: Enhance Review Board RBTools (rbt) to support svn tree (or file copy)
http://code.google.com/p/reviewboard/issues/detail?id=3024

This patch fixes other clients from breaking due to svn client change.

--- 0.5.1.1/utils/diffs.py      (revision 408105)
+++ 0.5.1.1/utils/diffs.py      (working copy)
@@ -1,14 +1,24 @@
-def get_diff(scmtool, repository_info, revision_range=None,
-             svn_changelist=None, files=[]):
+def get_diff(scmtool, repository_info, svn_show_copies_as_adds=None,
+             revision_range=None, svn_changelist=None, files=[]):
     """Returns a diff as a string."""
     if revision_range:
-        diff, parent_diff = scmtool.diff_between_revisions(
-            revision_range,
-            files,
-            repository_info)
+        if scmtool.name == 'Subversion':
+            diff, parent_diff = scmtool.diff_between_revisions(
+                revision_range,
+                files,
+                repository_info,
+                svn_show_copies_as_adds)
+        else:
+            diff, parent_diff = scmtool.diff_between_revisions(
+                revision_range,
+                files,
+                repository_info)
     elif svn_changelist:
-        diff, parent_diff = scmtool.diff_changelist(svn_changelist)
+        diff, parent_diff = scmtool.diff_changelist(svn_changelist,
+ svn_show_copies_as_adds)
     else:
-        diff, parent_diff = scmtool.diff(files)
-
+        if scmtool.name == 'Subversion':
+ diff, parent_diff = scmtool.diff(files, svn_show_copies_as_adds)
+        else:
+            diff, parent_diff = scmtool.diff(files)
     return diff, parent_diff

Attachments:
        patch  7.0 KB

--
You received this message because this project is configured to send all issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups 
"reviewboard-issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard-issues+unsubscr...@googlegroups.com.
To post to this group, send email to reviewboard-issues@googlegroups.com.
Visit this group at http://groups.google.com/group/reviewboard-issues.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to