changeset 3076:5deb16cd2802 beta

fixes #668 cherry picking of changeset should also work now on picking single changesets, and the ones from top
author Marcin Kuzminski <marcin@python-works.com>
date Sat, 08 Dec 2012 00:57:18 +0100
parents 25029d6f4b47
children 6d599a3c0d67
files rhodecode/model/pull_request.py rhodecode/templates/changelog/changelog.html
diffstat 2 files changed, 7 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/model/pull_request.py	Fri Dec 07 02:31:02 2012 +0100
+++ b/rhodecode/model/pull_request.py	Sat Dec 08 00:57:18 2012 +0100
@@ -176,6 +176,12 @@
             for cs in map(binascii.hexlify, revs):
                 _cs = org_repo.get_changeset(cs)
                 changesets.append(_cs)
+            # in case we have revisions filter out the ones not in given range
+            if org_ref[0] == 'rev' and other_ref[0] == 'rev':
+                revs = [x.raw_id for x in changesets]
+                start = org_ref[1]
+                stop = other_ref[1]
+                changesets = changesets[revs.index(start):revs.index(stop) + 1]
         else:
             #no remote compare do it on the same repository
             if alias == 'hg':
@@ -276,5 +282,4 @@
                                          org_repo_scm, org_ref,
                                          other_repo_scm, other_ref,
                                          discovery_data)
-
         return cs_ranges, discovery_data
--- a/rhodecode/templates/changelog/changelog.html	Fri Dec 07 02:31:02 2012 +0100
+++ b/rhodecode/templates/changelog/changelog.html	Sat Dec 08 00:57:18 2012 +0100
@@ -167,7 +167,7 @@
                           }
                         }
 
-                        if(checked_checkboxes.length>1){
+                        if(checked_checkboxes.length>0){
                         	var rev_end = checked_checkboxes[0].name;
                         	var rev_start = checked_checkboxes[checked_checkboxes.length-1].name;