diff options
author | Eric Wong <e@80x24.org> | 2022-01-20 18:34:17 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2022-01-21 19:54:42 +0000 |
commit | 5111742a5a100e44fccf191b12a13c452b025944 (patch) | |
tree | 94c2e66a90425d80f937491e86cd3adfcc4eba84 /lib/dtas/source/av_ff_common.rb | |
parent | c3b34b1693e7b35841d87dae0dce8ccecebe9008 (diff) | |
download | dtas-5111742a5a100e44fccf191b12a13c452b025944.tar.gz |
Ruby 2.3+ supports String#@-, though it did not deduplicate strings. But 2.5 is already old at this point and most users can be expected to have it. This gives some memory regressions for Ruby <= 2.4 users, but cuts down on the code we maintain and reduces bytecode overhead for 2.5+ users.
Diffstat (limited to 'lib/dtas/source/av_ff_common.rb')
-rw-r--r-- | lib/dtas/source/av_ff_common.rb | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/dtas/source/av_ff_common.rb b/lib/dtas/source/av_ff_common.rb index 6f92762..5299fdb 100644 --- a/lib/dtas/source/av_ff_common.rb +++ b/lib/dtas/source/av_ff_common.rb @@ -1,4 +1,4 @@ -# Copyright (C) 2013-2020 all contributors <dtas-all@nongnu.org> +# Copyright (C) all contributors <dtas-all@nongnu.org> # License: GPL-3.0+ <https://www.gnu.org/licenses/gpl-3.0.txt> # frozen_string_literal: true require_relative '../../dtas' @@ -110,7 +110,7 @@ module DTAS::Source::AvFfCommon # :nodoc: f =~ /^duration=([\d\.]+)\s*$/nm and @duration = $1.to_f # TODO: multi-line/multi-value/repeated tags f.gsub!(/^TAG:([^=]+)=(.*)$/ni) { |_| - @comments[DTAS.dedupe_str($1.upcase)] = DTAS.dedupe_str($2) + @comments[$1.upcase] = -($2) } end @@ -118,7 +118,7 @@ module DTAS::Source::AvFfCommon # :nodoc: s.scan(%r{^\[format\.tags\]\n(.*?)\n\n}m) do |_| f = $1.dup f.gsub!(/^([^=]+)=(.*)$/ni) { |_| - @comments[DTAS.dedupe_str($1.upcase)] = DTAS.dedupe_str($2) + @comments[$1.upcase] = -$2 } end s.scan(%r{^\[format\]\n(.*?)\n\n}m) do |_| |