[Bug 1353171] Re: Misparses dpkg status line, fails to write apport reports

Launchpad Bug Tracker 1353171 at bugs.launchpad.net
Thu Nov 6 21:53:12 UTC 2014


This bug was fixed in the package apt - 1.0.1ubuntu2.6

---------------
apt (1.0.1ubuntu2.6) trusty-proposed; urgency=medium

  * apt-pkg/deb/dpkgpm.cc:
    - update string matching for dpkg I/O errors. (LP: #1363257)
    - properly parse the dpkg status line so that package name is properly set
      and an apport report is created. Thanks to Anders Kaseorg for the patch.
      (LP: #1353171)
 -- Brian Murray <brian at ubuntu.com>   Wed, 08 Oct 2014 14:01:41 -0700

** Changed in: apt (Ubuntu Trusty)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to apt in Ubuntu.
https://bugs.launchpad.net/bugs/1353171

Title:
  Misparses dpkg status line, fails to write apport reports

Status in “apt” package in Ubuntu:
  Fix Released
Status in “apt” source package in Trusty:
  Fix Released

Bug description:
  Test Case
  ---------
  1) sudo apt-add-repository ppa:daisy-pluckers/daisy-seeds
  2) sudo apt-get update
  3) sudo apt-get install crash-in-postinst
  4) observe a package installation failure dialog

  With the version of apt in the archive you will *not* receive a crash
  file in /var/crash. If you install the version of apt from -proposed
  you should receive a crash file in /var/crash and an apport dialog
  should appear.

  For a while apt has not been writing apport reports for dpkg
  maintainer script errors. Here’s why:

  • pkgDPkgPM::ProcessDpkgStatusLine sees a line like
  "status: cyrus-clients : error : subprocess installed post-installation script returned error exit status 1".
  • StringSplit splits it into
  list == {"status", "cyrus-clients ", "error ", "subprocess installed post-installation script returned error exit status 1"}.
  • pkgname is set to Strip(list[1]) == "cyrus-clients".
  • However, the original list[1] == "cyrus-clients " (with a trailing space) is passed to WriteApportReport.
  • WriteApport fails to find "cyrus-clients " in the cache, and bails out.

  Patch attached.

  ProblemType: Bug
  DistroRelease: Ubuntu 14.10
  Package: libapt-pkg4.12 1.0.4ubuntu6
  ProcVersionSignature: Ubuntu 3.16.0-6.11-generic 3.16.0-rc7
  Uname: Linux 3.16.0-6-generic x86_64
  NonfreeKernelModules: openafs
  ApportVersion: 2.14.5-0ubuntu3
  Architecture: amd64
  Date: Tue Aug  5 19:19:39 2014
  EcryptfsInUse: Yes
  InstallationDate: Installed on 2010-12-05 (1339 days ago)
  InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Alpha amd64 (20101202)
  SourcePackage: apt
  UpgradeStatus: Upgraded to utopic on 2013-10-31 (278 days ago)

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/apt/+bug/1353171/+subscriptions



More information about the foundations-bugs mailing list