aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorW. Trevor King <wking@drexel.edu>2009-12-13 08:12:47 -0500
committerW. Trevor King <wking@drexel.edu>2009-12-13 08:12:47 -0500
commit9fa977a31982a2eda08c2c18ade73bd114f477b1 (patch)
treee61975fa3cbdab00d5bc69016357c92136e1b72b
parent1cd02476257a7673668f1bdcdeac2902f3f21adb (diff)
downloadbugseverywhere-9fa977a31982a2eda08c2c18ade73bd114f477b1.tar.gz
Handle non-int args to VCS.revision_id at the VCS level.
-rw-r--r--libbe/storage/vcs/base.py5
-rw-r--r--libbe/storage/vcs/hg.py4
2 files changed, 5 insertions, 4 deletions
diff --git a/libbe/storage/vcs/base.py b/libbe/storage/vcs/base.py
index fffabf8..fc3427a 100644
--- a/libbe/storage/vcs/base.py
+++ b/libbe/storage/vcs/base.py
@@ -755,6 +755,11 @@ os.listdir(self.get_path("bugs")):
def revision_id(self, index=None):
if index == None:
return None
+ try:
+ if int(index) != index:
+ raise InvalidRevision(index)
+ except ValueError:
+ raise InvalidRevision(index)
revid = self._vcs_revision_id(index)
if revid == None:
raise libbe.storage.base.InvalidRevision(index)
diff --git a/libbe/storage/vcs/hg.py b/libbe/storage/vcs/hg.py
index 260f0c4..f1a7eef 100644
--- a/libbe/storage/vcs/hg.py
+++ b/libbe/storage/vcs/hg.py
@@ -100,10 +100,6 @@ class Hg(base.VCS):
return self._vcs_revision_id(-1)
def _vcs_revision_id(self, index, style='id'):
- try:
- index = str(int(index))
- except ValueError:
- return None
args = ['identify', '--rev', str(int(index)), '--%s' % style]
kwargs = {'expect': (0,255)}
status,output,error = self._u_invoke_client(*args, **kwargs)