Package: debarchiver
Version: 0.6.0
Severity: normal
Tags: patch

When a .changes file contains udebs, the file section looks like:

Files:
 084c19ee2eb6806c170dde59fe02292f 376 admin - debootstrap_0.3.3.dsc
 30024493db05bfc255d22c93612c8602 220917 admin - 
debootstrap_0.3.3.tar.gz
 e5af7cf1ab6e1f2b81939f91b7bfd4b2 46028 admin extra 
debootstrap_0.3.3_all.deb
 443f5f148d6eafd2578dacec49041663 52502 debian-installer required 
debootstrap-udeb_0.3.3_amd64.udeb
package-type: udeb

The parseChangesFile function parses this last line as another file,
which is wrong.

The attached patch solves this issue.

-- System Information:
Debian Release: testing/unstable
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.15-1-amd64-k8
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)

Versions of packages debarchiver depends on:
ii  adduser               3.85       Add and remove users and groups
ii  apt-utils             0.6.43.3   APT utility programs
ii  dpkg-dev              1.13.16    package building tools for Debian
ii  opalmod               0.1.13     A set of Perl modules for various 

debarchiver recommends no packages.

-- no debconf information

Regards,
-- 
Jérémy
--- debarchiver-0.6.0.orig/src/debarchiver.pl	2006-02-26 14:12:37.000000000 +0100
+++ debarchiver-0.6.0/src/debarchiver.pl	2006-03-21 11:28:54.000000000 +0100
@@ -1996,11 +1996,13 @@
 	}
 	# Files state.
 	elsif ($state =~ /Files/) {
-	    my @f = split / /, $line;
-	    shift @f;
-	    my $file = pop @f;
-	    $CFiles{$file} = "$f[0] $f[1] $f[2] $f[3]";#[ @f ];
-	    pdebug (6, "Saving file $file.\n");
+	    if ($line[0] eq ' ') {
+		my @f = split / /, $line;
+		shift @f;
+		my $file = pop @f;
+		$CFiles{$file} = "$f[0] $f[1] $f[2] $f[3]";#[ @f ];
+		pdebug (6, "Saving file $file.\n");
+	    }
 	}
     }
 }

Attachment: pgpUO209rbFEF.pgp
Description: PGP signature

Reply via email to