From fbf23a14b8377b89bf2eab35754c43ac1c329473 Mon Sep 17 00:00:00 2001 From: Toshi MARUYAMA Date: Tue, 12 Apr 2011 05:44:48 +0000 Subject: [PATCH] scm: darcs: code clean up model. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@5432 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- app/models/repository/darcs.rb | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/app/models/repository/darcs.rb b/app/models/repository/darcs.rb index c8870e299..5a9e7a7dd 100644 --- a/app/models/repository/darcs.rb +++ b/app/models/repository/darcs.rb @@ -40,30 +40,32 @@ class Repository::Darcs < Repository patch = identifier.nil? ? nil : changesets.find_by_revision(identifier) scm.entry(path, patch.nil? ? nil : patch.scmid) end - + def entries(path=nil, identifier=nil) patch = identifier.nil? ? nil : changesets.find_by_revision(identifier) entries = scm.entries(path, patch.nil? ? nil : patch.scmid) if entries entries.each do |entry| # Search the DB for the entry's last change - changeset = changesets.find_by_scmid(entry.lastrev.scmid) if entry.lastrev && !entry.lastrev.scmid.blank? + if entry.lastrev && !entry.lastrev.scmid.blank? + changeset = changesets.find_by_scmid(entry.lastrev.scmid) + end if changeset entry.lastrev.identifier = changeset.revision - entry.lastrev.name = changeset.revision - entry.lastrev.time = changeset.committed_on - entry.lastrev.author = changeset.committer + entry.lastrev.name = changeset.revision + entry.lastrev.time = changeset.committed_on + entry.lastrev.author = changeset.committer end end end entries end - + def cat(path, identifier=nil) patch = identifier.nil? ? nil : changesets.find_by_revision(identifier.to_s) scm.cat(path, patch.nil? ? nil : patch.scmid) end - + def diff(path, rev, rev_to) patch_from = changesets.find_by_revision(rev) return nil if patch_from.nil? @@ -73,7 +75,7 @@ class Repository::Darcs < Repository end patch_from ? scm.diff(path, patch_from.scmid, patch_to ? patch_to.scmid : nil) : nil end - + def fetch_changesets scm_info = scm.info if scm_info