# HG changeset patch # User Marcin Kuzminski # Date 2012-12-07 23:57:18 # Node ID 5deb16cd2802228d36c6048d7559a77af212628a # Parent 25029d6f4b473aafb2fa9b1778169d408459a673 fixes #668 cherry picking of changeset should also work now on picking single changesets, and the ones from top diff --git a/rhodecode/model/pull_request.py b/rhodecode/model/pull_request.py --- a/rhodecode/model/pull_request.py +++ b/rhodecode/model/pull_request.py @@ -176,6 +176,12 @@ class PullRequestModel(BaseModel): 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 @@ class PullRequestModel(BaseModel): org_repo_scm, org_ref, other_repo_scm, other_ref, discovery_data) - return cs_ranges, discovery_data diff --git a/rhodecode/templates/changelog/changelog.html b/rhodecode/templates/changelog/changelog.html --- a/rhodecode/templates/changelog/changelog.html +++ b/rhodecode/templates/changelog/changelog.html @@ -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;