Changeset - 6d2239363c81
[Not reviewed]
beta
0 1 0
Marcin Kuzminski - 15 years ago 2011-01-30 23:36:17
marcin@python-works.com
#93 fixed errors on new revranges generation
1 file changed with 5 insertions and 4 deletions:
0 comments (0 inline, 0 general)
rhodecode/controllers/changeset.py
Show inline comments
 
@@ -35,13 +35,14 @@ from pylons.controllers.util import redi
 
import rhodecode.lib.helpers as h
 
from rhodecode.lib.auth import LoginRequired, HasRepoPermissionAnyDecorator
 
from rhodecode.lib.base import BaseController, render
 
from rhodecode.lib.utils import EmptyChangeset
 
from rhodecode.model.scm import ScmModel
 

	
 
from vcs.exceptions import RepositoryError, ChangesetError
 
from vcs.exceptions import RepositoryError, ChangesetError, \
 
ChangesetDoesNotExistError
 
from vcs.nodes import FileNode
 
from vcs.utils import diffs as differ
 
from vcs.utils.ordered_dict import OrderedDict
 

	
 
log = logging.getLogger(__name__)
 

	
 
@@ -74,13 +75,13 @@ class ChangesetController(BaseController
 
            """
 

	
 
            start_cs = repo.get_changeset(rev_start)
 
            end_cs = repo.get_changeset(rev_end)
 

	
 
            if start_cs.revision >= end_cs.revision:
 
                raise Exception('Start cannot be after End')
 
                raise Exception('Start revision cannot be after End')
 

	
 
            yield start_cs
 

	
 
            while 1:
 
                next = start_cs.next()
 
                yield next
 
@@ -97,25 +98,25 @@ class ChangesetController(BaseController
 
        try:
 
            repo = hg_model.get_repo(c.repo_name)
 
            if len(rev_range) == 2:
 
                rev_start = rev_range[0]
 
                rev_end = rev_range[1]
 
                rev_ranges = get_cs_range(repo, rev_start, rev_end)
 
                c.cs_ranges = list(rev_ranges)
 

	
 
            else:
 
                rev_ranges = [repo.get_changeset(revision)]
 
        except RepositoryError, e:
 
        except (RepositoryError, ChangesetDoesNotExistError, Exception), e:
 
            log.error(traceback.format_exc())
 
            h.flash(str(e), category='warning')
 
            return redirect(url('home'))
 

	
 
        c.changes = OrderedDict()
 
        c.sum_added = 0
 
        c.sum_removed = 0
 

	
 
        c.cs_ranges = list(rev_ranges)
 

	
 
        for changeset in c.cs_ranges:
 
            c.changes[changeset.raw_id] = []
 
            try:
 
                changeset_parent = changeset.parents[0]
 
            except IndexError:
0 comments (0 inline, 0 general)