changeset 2874:95923493de9a beta

protect agains pull requests on empty repositories
author Marcin Kuzminski <marcin@python-works.com>
date Fri, 28 Sep 2012 15:57:57 +0200
parents b1b31bfe2f99
children f68522e3df79
files rhodecode/controllers/pullrequests.py
diffstat 1 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/rhodecode/controllers/pullrequests.py	Wed Sep 26 23:10:51 2012 +0200
+++ b/rhodecode/controllers/pullrequests.py	Fri Sep 28 15:57:57 2012 +0200
@@ -50,6 +50,7 @@
 from rhodecode.model.comment import ChangesetCommentsModel
 from rhodecode.model.changeset_status import ChangesetStatusModel
 from rhodecode.model.forms import PullRequestForm
+from rhodecode.lib.vcs.exceptions import EmptyRepositoryError
 
 log = logging.getLogger(__name__)
 
@@ -107,6 +108,13 @@
             log.error('Review not available for GIT REPOS')
             raise HTTPNotFound
 
+        try:
+            org_repo.scm_instance.get_changeset()
+        except EmptyRepositoryError, e:
+            h.flash(h.literal(_('There are no changesets yet')),
+                    category='warning')
+            redirect(url('summary_home', repo_name=org_repo.repo_name))
+
         other_repos_info = {}
 
         c.org_refs = self._get_repo_refs(c.rhodecode_repo)