aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNobuyoshi Nakada <nobu@ruby-lang.org>2022-11-02 13:31:42 +0900
committerNobuyoshi Nakada <nobu@ruby-lang.org>2022-11-02 13:37:50 +0900
commit8e2c70af141239f5142642db35cee11c3d00bd24 (patch)
tree2c35ff575d2ce634f57e9f96787f0db8f34295d0
parent3475b661607e6d2c72460ea381ee856726128259 (diff)
downloadruby-8e2c70af141239f5142642db35cee11c3d00bd24.tar.gz
file2lastrev.rb: changed revision may be `nil` [ci skip]
When `--suppress_not_found` option is given, no revision information is available. And remove extraneous newline, when result is empty or ends with a newline.
-rwxr-xr-xtool/file2lastrev.rb6
1 files changed, 4 insertions, 2 deletions
diff --git a/tool/file2lastrev.rb b/tool/file2lastrev.rb
index 48b8a1ae99..1dfb01ab9e 100755
--- a/tool/file2lastrev.rb
+++ b/tool/file2lastrev.rb
@@ -69,7 +69,7 @@ formatter =
case @format
when :changed, nil
Proc.new {|last, changed|
- changed
+ changed || ""
}
when :revision_h
Proc.new {|last, changed, modified, branch, title|
@@ -90,7 +90,9 @@ formatter =
ok = true
(ARGV.empty? ? [nil] : ARGV).each do |arg|
begin
- @output.write(formatter[*vcs.get_revisions(arg)]+"\n", overwrite: true)
+ data = formatter[*vcs.get_revisions(arg)]
+ data.sub!(/(?<!\A|\n)\z/, "\n")
+ @output.write(data, overwrite: true)
rescue => e
warn "#{File.basename(Program)}: #{e.message}"
ok = false