Package: dpkg
Version: 1.4.1.4
Severity: normal

The "install-info" script contains the following Perl snippet (line
222) :

do {
    last if [EMAIL PROTECTED];
    $_= shift(@work);
    push(@head,$_);
} until (m/^\*\s*Menu:/i);

However, "last" is not valid withing a do {} until block (See, for
example "Programming Perl", page 529).  This isn't normally a problem,
but if the info "dir" file is corrupt in some fashion, it's possible
that the "@work" array will be empty when this construct is reached, at
which point the Perl interpreter will exit with an error.

I suggest that the above loop be rewritten as:

do {
    push(@head, $_ = shift(@work)) if @work;
} until ([EMAIL PROTECTED] or m/^\*\s*Menu:/i)

       Colm

-- 
Colm Buckley B.A. B.F. # [EMAIL PROTECTED] [EMAIL PROTECTED] [EMAIL PROTECTED]
Department of Computer Science      # +353 87 2469146 # whois cb3765
Trinity College, Dublin 2, Ireland. # http://www.tuatha.org/~colm/
Al Capone's business card said he was a used furniture dealer.

Reply via email to