On Mon, 31 Jan 2011, Guillem Jover wrote:
> The following commit has been merged in the master branch:
> commit 58e7276b69be105735eccb3c18c2b28d3a2ec2e5
[...]
> +  * Always warn when parsing any package control data which does not have
> +    an Architecture field.

This looks like wrong. There are several cases where we have status
information without the Architecture field.

After a run of dpkg --set-selections we can have many:
┏rivendell:~/deb/core/dpkg (master)
┗(720)$ echo "foo install" | sudo dpkg --set-selections
┏rivendell:~/deb/core/dpkg (master)
┗(722)$ LANG=C sudo dpkg -s foo
dpkg-query: warning: parsing file '/var/lib/dpkg/status' near line 5070 package 
'foo':
 missing architecture
Package: foo
Status: install ok not-installed

> -  if (pkg->available.arch && *pkg->available.arch &&
> -      strcmp(pkg->available.arch, "all") &&
> +  if (strcmp(pkg->available.arch, "all") &&
>        strcmp(pkg->available.arch, native_arch))
>      forcibleerr(fc_architecture,
>                  _("package architecture (%s) does not match system (%s)"),

There is a regression here that was not documented in the commit log, hence I
assumed it was unintended and fixed it in a subsequent commit. Package without
an architecture field used to install fine, with this change they don't. I added
a test case as well.

Cheers,
-- 
Raphaël Hertzog ◈ Debian Developer

Follow my Debian News ▶ http://RaphaelHertzog.com (English)
                      ▶ http://RaphaelHertzog.fr (Français)


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to