Skip to content

Commit 0c0ebc1

Browse files
Felipe Contrerasgitster
authored andcommitted
remote-helpers: add extra safety checks
Suggested-by: Roman Ovchinnikov <coolthecold@gmail.com> Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
1 parent 257ec84 commit 0c0ebc1

2 files changed

Lines changed: 20 additions & 8 deletions

File tree

contrib/remote-helpers/git-remote-bzr

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -883,6 +883,16 @@ def main(args):
883883
global branches, peers
884884
global transports
885885

886+
marks = None
887+
is_tmp = False
888+
gitdir = os.environ.get('GIT_DIR', None)
889+
890+
if len(args) < 3:
891+
die('Not enough arguments.')
892+
893+
if not gitdir:
894+
die('GIT_DIR not set')
895+
886896
alias = args[1]
887897
url = args[2]
888898

@@ -891,19 +901,15 @@ def main(args):
891901
blob_marks = {}
892902
parsed_refs = {}
893903
files_cache = {}
894-
marks = None
895904
branches = {}
896905
peers = {}
897906
transports = []
898907

899908
if alias[5:] == url:
900909
is_tmp = True
901910
alias = hashlib.sha1(alias).hexdigest()
902-
else:
903-
is_tmp = False
904911

905912
prefix = 'refs/bzr/%s' % alias
906-
gitdir = os.environ['GIT_DIR']
907913
dirname = os.path.join(gitdir, 'bzr', alias)
908914

909915
if not is_tmp:

contrib/remote-helpers/git-remote-hg

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1164,6 +1164,16 @@ def main(args):
11641164
global dry_run
11651165
global notes, alias
11661166

1167+
marks = None
1168+
is_tmp = False
1169+
gitdir = os.environ.get('GIT_DIR', None)
1170+
1171+
if len(args) < 3:
1172+
die('Not enough arguments.')
1173+
1174+
if not gitdir:
1175+
die('GIT_DIR not set')
1176+
11671177
alias = args[1]
11681178
url = args[2]
11691179
peer = None
@@ -1184,16 +1194,12 @@ def main(args):
11841194
if alias[4:] == url:
11851195
is_tmp = True
11861196
alias = hashlib.sha1(alias).hexdigest()
1187-
else:
1188-
is_tmp = False
11891197

1190-
gitdir = os.environ['GIT_DIR']
11911198
dirname = os.path.join(gitdir, 'hg', alias)
11921199
branches = {}
11931200
bmarks = {}
11941201
blob_marks = {}
11951202
parsed_refs = {}
1196-
marks = None
11971203
parsed_tags = {}
11981204
filenodes = {}
11991205
fake_bmark = None

0 commit comments

Comments
 (0)