#924684 libmp3-info-perl: Unescaped left brace in regex is deprecated

#924684#5
Date:
2019-03-15 20:21:17 UTC
From:
To:
Dear Maintainer,

    * What led up to the situation?

Using get_mp3tag()

    * What was the outcome of this action?

Unescaped left brace in regex is deprecated here (and will be fatal in
Perl 5.32), passed through in regex; marked by <-- HERE in m/^\??({ <--
HERE ([^{}]+)}|.)/ at /usr/share/perl5/MP3/Tag.pm line 2944.
Unescaped left brace in regex is deprecated here (and will be fatal in
Perl 5.32), passed through in regex; marked by <-- HERE in m/^({ <--
HERE [^{}]+}|\w)/ at /usr/share/perl5/MP3/Tag.pm line 2956.


Suggested fix:
--- Tag.pm.orig 2017-07-12 21:25:22.000000000 +0200
+++ Tag.pm      2019-03-15 21:16:44.760013512 +0100
@@ -2941,7 +2941,7 @@
    local $self->{ms} = int($time * 1000 + 0.5) if defined $time;
    my ($out, %have, $c) = '';
    for my $f (@_) {
-    $have{$+}++ if $f =~ /^\??({([^{}]+)}|.)/;
+    $have{$+}++ if $f =~ /^\??(\{([^{}]+)\}|.)/;
    }
    for my $f (@_) {
      if (!$c++ and $f =~ /^=>(\w)$/) {
@@ -2953,7 +2953,7 @@
      }
      my $ff = $f;               # Modifiable
      my $opt = ($ff =~ s/^\?//);
-    $ff =~ s/^({[^{}]+}|\w)// or die "unexpected time format: <<$f>>";
+    $ff =~ s/^(\{[^{}]+\}|\w)// or die "unexpected time format: <<$f>>";
      my ($what, $format) = ($1, '');
      if ($opt) {
        if ($what eq 'H') {

#924684#8
Date:
2021-12-22 18:54:05 UTC
From:
To:
-=| Martin Schuster, 15.03.2019 21:21:17 +0100 |=-

This looks like bug #9284684 in libmp3-tag-perl (already fixed via
NMU), but filed earlier and in the wrong package. libmp3-info-perl
doesn't ship Tag.pm.

Merging accordingly.

#924684#17
Date:
2022-07-01 06:11:16 UTC
From:
To:
This bug was fixed in 1.13-1.2. Closing the report.