diff options
author | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2018-02-15 20:16:42 +0000 |
---|---|---|
committer | Ian Jackson <ijackson@chiark.greenend.org.uk> | 2018-06-16 12:25:49 +0100 |
commit | a865af47e6e6dc6160812fa0cdfbcb4d57f38723 (patch) | |
tree | d7a296878e5f03c35286028fb1a1dd9abec15f8f /git-debrebase | |
parent | 5c1ed9665a1ec02cdaa5811e58600edcda0ce3b2 (diff) |
git-debrebase: break out ffq_prev_branchinfo (nfc)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'git-debrebase')
-rwxr-xr-x | git-debrebase | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/git-debrebase b/git-debrebase index f68dfb1..592dd29 100755 --- a/git-debrebase +++ b/git-debrebase @@ -850,6 +850,20 @@ sub cmd_analyse () { STDOUT->error and die $!; } +sub ffq_prev_branchinfo () { + # => ('status', "message", [$current, $ffq_prev]) + # 'status' may be + # branch message is undef + # weird-symref } no $current, + # notbranch } no $ffq_prev + my $current = git_get_symref(); + return ('detached', 'detached HEAD') unless defined $current; + return ('weird-symref', 'HEAD symref is not to refs/') + unless $current =~ m{^refs/}; + my $ffq_prev = "refs/$ffq_refprefix/$'"; + return ('branch', undef, $current, $ffq_prev); +} + sub record_ffq_prev () { # => ('status', "message") # 'status' may be @@ -861,11 +875,8 @@ sub record_ffq_prev () { # if not ff from some branch we should be ff from, is an fproblem # if "written", will have printed something about that to stdout, # and also some messages about ff checks - my $current = git_get_symref(); - return ('detached', 'detached HEAD') unless defined $current; - return ('weird-symref', 'HEAD symref is not to refs/') - unless $current =~ m{^refs/}; - my $ffq_prev = "refs/$ffq_refprefix/$'"; + my ($status, $message, $current, $ffq_prev) = ffq_prev_branchinfo(); + return ($status, $message) unless $status eq 'branch'; my $currentval = get_head(); |