The following commit has been merged in the master branch:
commit b05060cb961a6dcb1eac5cc1796058dbc2bdbfad
Author: Guillem Jover <guil...@debian.org>
Date:   Fri Jun 26 05:05:49 2009 +0200

    Dpkg::ErrorHandling: Explicitly pass field argument to unknown()

diff --git a/debian/changelog b/debian/changelog
index 6d04f7c..1d295ce 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,7 @@ dpkg (1.15.3) UNRELEASED; urgency=low
   * Document in dpkg-statoverride(8) that mode needs to be specified in
     octal. Closes: #534551
   * Mark argument names in dpkg-statoverride.1 in italic.
+  * Explicitly pass field argument to Dpkg::ErrorHandling::unknown().
 
   [ Raphael Hertzog ]
   * Unset TAR_OPTIONS when creating/extracting tar archives for source
diff --git a/scripts/Dpkg/ErrorHandling.pm b/scripts/Dpkg/ErrorHandling.pm
index cc6b8fe..4c5cefe 100644
--- a/scripts/Dpkg/ErrorHandling.pm
+++ b/scripts/Dpkg/ErrorHandling.pm
@@ -62,12 +62,12 @@ sub internerr($;@)
     die report(_g("internal error"), @_);
 }
 
-sub unknown($)
+sub unknown($$)
 {
-    # XXX: implicit argument
-    my $field = $_;
+    my ($field, $desc) = @_;
+
     warning(_g("unknown information field '%s' in input data in %s"),
-            $field, $_[0]);
+            $field, $desc);
 }
 
 sub subprocerr(@)
diff --git a/scripts/dpkg-genchanges.pl b/scripts/dpkg-genchanges.pl
index e64d912..29ae0af 100755
--- a/scripts/dpkg-genchanges.pl
+++ b/scripts/dpkg-genchanges.pl
@@ -270,7 +270,7 @@ foreach $_ (keys %{$src_fields}) {
     } elsif (m/^X[BS]+-/i || m/^$control_src_field_regex$/i) {
        # Silently ignore valid fields
     } else {
-       unknown(_g('general section of control info file'));
+       unknown($_, _g('general section of control info file'));
     }
 }
 
@@ -324,7 +324,7 @@ foreach my $pkg ($control->get_packages()) {
        } elsif (m/^$control_pkg_field_regex$/ || m/^X[BS]+-/i) {
            # Silently ignore valid fields
        } else {
-           unknown(_g("package's section of control info file"));
+           unknown($_, _g("package's section of control info file"));
        }
     }
 }
@@ -341,7 +341,7 @@ foreach $_ (keys %{$changelog}) {
     } elsif (s/^X[BS]*C[BS]*-//i) {
        $fields->{$_} = $v;
     } elsif (!m/^X[BS]+-/i) {
-       unknown(_g("parsed version of changelog"));
+       unknown($_, _g("parsed version of changelog"));
     }
 }
 
diff --git a/scripts/dpkg-gencontrol.pl b/scripts/dpkg-gencontrol.pl
index 19ca39c..25884f4 100755
--- a/scripts/dpkg-gencontrol.pl
+++ b/scripts/dpkg-gencontrol.pl
@@ -160,7 +160,7 @@ foreach $_ (keys %{$src_fields}) {
     } elsif (m/^X[CS]+-/i || m/^$control_src_field_regex$/i) {
        # Silently ignore valid fields
     } else {
-       unknown(_g('general section of control info file'));
+       unknown($_, _g('general section of control info file'));
     }
 }
 
@@ -193,7 +193,7 @@ foreach $_ (keys %{$pkg}) {
     } elsif (s/^X[CS]*B[CS]*-//i) { # Include XB-* fields
        $fields->{$_} = $v;
     } elsif (!m/^X[CS]+-/i) {
-       unknown(_g("package's section of control info file"));
+       unknown($_, _g("package's section of control info file"));
     }
 }
 
@@ -210,7 +210,7 @@ foreach $_ (keys %{$changelog}) {
     } elsif (s/^X[CS]*B[CS]*-//i) {
        $fields->{$_} = $v;
     } elsif (!m/^X[CS]+-/i) {
-       unknown(_g("parsed version of changelog"));
+       unknown($_, _g("parsed version of changelog"));
     }
 }
 
diff --git a/scripts/dpkg-source.pl b/scripts/dpkg-source.pl
index 03cf0b5..f73debc 100755
--- a/scripts/dpkg-source.pl
+++ b/scripts/dpkg-source.pl
@@ -182,7 +182,7 @@ if ($options{'opmode'} eq 'build') {
        } elsif (m/^$control_src_field_regex$/i || m/^X[BC]+-/i) {
            # Silently ignore valid fields
        } else {
-           unknown(_g('general section of control info file'));
+           unknown($_, _g('general section of control info file'));
        }
     }
 
@@ -215,7 +215,7 @@ if ($options{'opmode'} eq 'build') {
             } elsif (m/^$control_pkg_field_regex$/ ||
                      m/^X[BC]+-/i) { # Silently ignore valid fields
             } else {
-                unknown(_g("package's section of control info file"));
+                unknown($_, _g("package's section of control info file"));
             }
        }
     }
@@ -240,7 +240,7 @@ if ($options{'opmode'} eq 'build') {
        } elsif (m/^(Maintainer|Changes|Urgency|Distribution|Date|Closes)$/i ||
                 m/^X[BS]+-/i) {
        } else {
-           unknown(_g("parsed version of changelog"));
+           unknown($_, _g("parsed version of changelog"));
        }
     }
     

-- 
dpkg's main repository


-- 
To UNSUBSCRIBE, email to debian-dpkg-cvs-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to