]> git.saurik.com Git - apt.git/commitdiff
fix crash in order writing in pkgDPkgPM::WriteApportReport()
authorMichael Vogt <mvo@debian.org>
Tue, 7 Apr 2015 10:20:56 +0000 (12:20 +0200)
committerDavid Kalnischkies <david@kalnischkies.de>
Tue, 7 Apr 2015 16:30:15 +0000 (18:30 +0200)
libapt can be configured to write various bits of information to a file
creating a report via apport. This is disabled by default in Debian and
apport residing only in /experimental so far, but Ubuntu and other
derivatives have this (in some versions) enabled by default and there is
no regression potentially here.

The crash is caused by a mismatch of operations vs. strings for
operations, so adding the missing strings for these operations solves
the problem.

[commit message by David Kalnischkies]

LP: #1436626

apt-pkg/deb/dpkgpm.cc

index e23ca466d89b9c774deadce4f57cd9a37d6cccb3..82e045fd3ef29edbde021bb778f7d8a1b2aee313 100644 (file)
@@ -1900,8 +1900,15 @@ void pkgDPkgPM::WriteApportReport(const char *pkgpath, const char *errormsg)
       }
    }
 
-   // log the ordering 
-   const char *ops_str[] = {"Install", "Configure","Remove","Purge"};
+   // log the ordering, see dpkgpm.h and the "Ops" enum there
+   const char *ops_str[] = {
+      "Install",
+      "Configure",
+      "Remove",
+      "Purge",
+      "ConfigurePending",
+      "TriggersPending",
+   };
    fprintf(report, "AptOrdering:\n");
    for (vector<Item>::iterator I = List.begin(); I != List.end(); ++I)
       if ((*I).Pkg != NULL)