# HG changeset patch # User Mads Kiilerich # Date 2019-12-26 06:02:37 # Node ID 79ca7a9fdb6eece8673b8b465f404240055c8749 # Parent 39ba3ee88c7ca4d9b5da35e8aab0b763b3827ae7 vcs: refactor processing of run_git_command output for GitChangeset.children diff --git a/kallithea/lib/vcs/backends/git/changeset.py b/kallithea/lib/vcs/backends/git/changeset.py --- a/kallithea/lib/vcs/backends/git/changeset.py +++ b/kallithea/lib/vcs/backends/git/changeset.py @@ -197,14 +197,12 @@ class GitChangeset(BaseChangeset): so, se = self.repository.run_git_command( ['rev-list', rev_filter, '--children'] ) - - children = [] - pat = re.compile(r'^%s' % self.raw_id) - for l in so.splitlines(): - if pat.match(l): - childs = l.split(' ')[1:] - children.extend(childs) - return [self.repository.get_changeset(cs) for cs in children] + return [ + self.repository.get_changeset(cs) + for parts in (l.split(' ') for l in so.splitlines()) + if parts[0] == self.raw_id + for cs in parts[1:] + ] def next(self, branch=None): if branch and self.branch != branch: