From: Michael Vogt Date: Thu, 21 Apr 2011 13:30:46 +0000 (+0200) Subject: * apt-pkg/deb/dpkgpm.cc: X-Git-Tag: 0.9.13.exp1ubuntu1~187 X-Git-Url: https://git.saurik.com/apt.git/commitdiff_plain/ecc8d43394155ea99960f66ed35713c701801c3f?hp=--cc * apt-pkg/deb/dpkgpm.cc: - stop reporting of apport-package bug reports regarding dpkg I/O errors (LP: #767776) --- ecc8d43394155ea99960f66ed35713c701801c3f diff --git a/apt-pkg/deb/dpkgpm.cc b/apt-pkg/deb/dpkgpm.cc index e957ce5fd..30f3b7d0f 100644 --- a/apt-pkg/deb/dpkgpm.cc +++ b/apt-pkg/deb/dpkgpm.cc @@ -1324,18 +1324,24 @@ void pkgDPkgPM::WriteApportReport(const char *pkgpath, const char *errormsg) // do not report dpkg I/O errors, this is a format string, so we compare // the prefix and the suffix of the error with the dpkg error message - const char *short_read_error = dgettext("dpkg", "short read in buffer_copy %s"); - vector list = VectorizeString(short_read_error, '%'); - if (list.size() > 1) + vector io_errors; + io_errors.push_back(string("failed to read on buffer copy for %s")); + io_errors.push_back(string("failed in write on buffer copy for %s")); + io_errors.push_back(string("short read on buffer copy for %s")); + + for (vector::iterator I = io_errors.begin(); I != io_errors.end(); I++) { - // we need to split %s, VectorizeString only allows char so we need - // to kill the "s" manually - if (list[1].size() > 1) { - list[1].erase(0, 1); - if(strstr(errormsg, list[0].c_str()) && - strstr(errormsg, list[1].c_str())) { - std::clog << _("No apport report written because the error message indicates a dpkg I/O error") << std::endl; - return; + vector list = VectorizeString(dgettext("dpkg", (*I).c_str()), '%'); + if (list.size() > 1) { + // we need to split %s, VectorizeString only allows char so we need + // to kill the "s" manually + if (list[1].size() > 1) { + list[1].erase(0, 1); + if(strstr(errormsg, list[0].c_str()) && + strstr(errormsg, list[1].c_str())) { + std::clog << _("No apport report written because the error message indicates a dpkg I/O error") << std::endl; + return; + } } } } diff --git a/debian/changelog b/debian/changelog index 4a986f0a2..7d50f4f37 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +apt (0.8.13.2ubuntu3) natty-proposed; urgency=low + + * apt-pkg/deb/dpkgpm.cc: + - stop reporting of apport-package bug reports regarding + dpkg I/O errors (LP: #767776) + + -- Brian Murray Wed, 20 Apr 2011 15:05:12 -0700 + apt (0.8.13.2ubuntu2) natty; urgency=low [ Michael Vogt ]