diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-07-31 17:47:44 +0100 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2016-09-05 13:41:47 +0100 |
commit | 2657a606b44b642acf64bb29ae177e7adde5887b (patch) | |
tree | bb6aee06c2498db3707a38ce5278826f2868e49e /dgit | |
parent | 12ece166a931d546fc6d152f253f7b78e7478dc7 (diff) |
Split tags: Preparation: Break out (and fix) need_tagformat
No major functional change.
However, we do preserve the previous override value, so that
need_tagformat's caller is happy, we still override the access
configuration.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'dgit')
-rwxr-xr-x | dgit | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -1138,6 +1138,15 @@ sub access_cfg_tagformats () { split /\,/, access_cfg('dgit-tag-format'); } +sub need_tagformat ($$) { + my ($fmt, $why) = @_; + fail "need to use tag format $fmt ($why) but also need". + " to use tag format $tagformat_want->[0] ($tagformat_want->[1])". + " - no way to proceed" + if $tagformat_want && $tagformat_want->[0] ne $fmt; + $tagformat_want = [$fmt, $why, $tagformat_want->[2] // 0]; +} + sub select_tagformat () { # sets $tagformatfn return if $tagformatfn && !$tagformat_want; @@ -2398,11 +2407,7 @@ sub cmd_remote_push_responder { cmd_remote_push_build_host(); } sub rpush_handle_protovsn_bothends () { if ($protovsn < 4) { - fail "rpush negotiated protocol version $protovsn". - " which supports old tag format only". - " but trying to use new format (".$tagformat_want->[1].")" - if $tagformat_want && $tagformat_want->[0] ne 'old'; - $tagformat_want = ['old', "rpush negotiated protocol $protovsn", 0]; + need_tagformat 'old', "rpush negotiated protocol $protovsn"; } select_tagformat(); } |