diff options
author | Guillem Jover <guillem@debian.org> | 2018-05-14 23:26:07 +0200 |
---|---|---|
committer | Guillem Jover <guillem@debian.org> | 2018-06-22 03:24:13 +0200 |
commit | 40eccd5c044c874cf7fa5f8dc8e2c75379395d8a (patch) | |
tree | ede6a8facb9834f4c43b7463af06ac6127de6e1a /scripts | |
parent | aa0404293ff1a3d81353acb8c7495fe9eb382c92 (diff) | |
download | dpkg-40eccd5c044c874cf7fa5f8dc8e2c75379395d8a.tar.gz |
scripts: Do not use stringy eval to define different sub implementations
We can just assign an anonymous sub to the typeglob.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/Dpkg/Gettext.pm | 58 | ||||
-rwxr-xr-x | scripts/dpkg-mergechangelogs.pl | 10 |
2 files changed, 31 insertions, 37 deletions
diff --git a/scripts/Dpkg/Gettext.pm b/scripts/Dpkg/Gettext.pm index 2e3e5042e..33ef1c48d 100644 --- a/scripts/Dpkg/Gettext.pm +++ b/scripts/Dpkg/Gettext.pm @@ -118,41 +118,37 @@ BEGIN { $use_gettext = not $@; } if (not $use_gettext) { - eval q{ - sub g_ { - return shift; - } - sub textdomain { - } - sub ngettext { - my ($msgid, $msgid_plural, $n) = @_; - if ($n == 1) { - return $msgid; - } else { - return $msgid_plural; - } - } - sub C_ { - my ($msgctxt, $msgid) = @_; + *g_ = sub { + return shift; + }; + *textdomain = sub { + }; + *ngettext = sub { + my ($msgid, $msgid_plural, $n) = @_; + if ($n == 1) { return $msgid; + } else { + return $msgid_plural; } - sub P_ { - return ngettext(@_); - } + }; + *C_ = sub { + my ($msgctxt, $msgid) = @_; + return $msgid; + }; + *P_ = sub { + return ngettext(@_); }; } else { - eval q{ - sub g_ { - return dgettext($DEFAULT_TEXT_DOMAIN, shift); - } - sub C_ { - my ($msgctxt, $msgid) = @_; - return dgettext($DEFAULT_TEXT_DOMAIN, - $msgctxt . GETTEXT_CONTEXT_GLUE . $msgid); - } - sub P_ { - return dngettext($DEFAULT_TEXT_DOMAIN, @_); - } + *g_ = sub { + return dgettext($DEFAULT_TEXT_DOMAIN, shift); + }; + *C_ = sub { + my ($msgctxt, $msgid) = @_; + return dgettext($DEFAULT_TEXT_DOMAIN, + $msgctxt . GETTEXT_CONTEXT_GLUE . $msgid); + }; + *P_ = sub { + return dngettext($DEFAULT_TEXT_DOMAIN, @_); }; } } diff --git a/scripts/dpkg-mergechangelogs.pl b/scripts/dpkg-mergechangelogs.pl index 7fd11fc96..20b33dc75 100755 --- a/scripts/dpkg-mergechangelogs.pl +++ b/scripts/dpkg-mergechangelogs.pl @@ -43,12 +43,10 @@ BEGIN { use Algorithm::Merge qw(merge); }; if ($@) { - eval q{ - sub merge { - my ($o, $a, $b) = @_; - return @$a if join("\n", @$a) eq join("\n", @$b); - return get_conflict_block($a, $b); - } + *merge = sub { + my ($o, $a, $b) = @_; + return @$a if join("\n", @$a) eq join("\n", @$b); + return get_conflict_block($a, $b); }; } } |