diff options
author | Michael Vogt <michael.vogt@ubuntu.com> | 2006-01-19 10:37:57 +0000 |
---|---|---|
committer | Michael Vogt <michael.vogt@ubuntu.com> | 2006-01-19 10:37:57 +0000 |
commit | b63380b007b6394935a1412791243fdf939b3c92 (patch) | |
tree | 19943fad02f341167ad0e440af7114697ed21627 | |
parent | 99d5b2609cf6662b267906f351e8345fad78025f (diff) |
* don't explod if a Provides has DepCompareOp
-rw-r--r-- | apt-pkg/deb/deblistparser.cc | 11 | ||||
-rw-r--r-- | debian/changelog | 8 |
2 files changed, 14 insertions, 5 deletions
diff --git a/apt-pkg/deb/deblistparser.cc b/apt-pkg/deb/deblistparser.cc index b11d2531c..d0dc7a260 100644 --- a/apt-pkg/deb/deblistparser.cc +++ b/apt-pkg/deb/deblistparser.cc @@ -504,11 +504,12 @@ bool debListParser::ParseProvides(pkgCache::VerIterator Ver) Start = ParseDepends(Start,Stop,Package,Version,Op); if (Start == 0) return _error->Error("Problem parsing Provides line"); - if (Op != pkgCache::Dep::NoOp) - return _error->Error("Malformed provides line"); - - if (NewProvides(Ver,Package,Version) == false) - return false; + if (Op != pkgCache::Dep::NoOp) { + _error->Warning("Ignoring Provides line with DepCompareOp for package %s", Package.c_str()); + } else { + if (NewProvides(Ver,Package,Version) == false) + return false; + } if (Start == Stop) break; diff --git a/debian/changelog b/debian/changelog index 3c3fbb4a9..b71fe095a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +apt (0.6.43.3) unstable; urgency=low + + * apt-pkg/deb/deblistparser.cc: + - don't explode on a DepCompareOp in a Provides line, but warn about + it and ignore it otherwise (thanks to James Troup for reporting it) + + -- Michael Vogt <michael.vogt@ubuntu.com> Thu, 19 Jan 2006 01:05:52 +0100 + apt (0.6.43.2) unstable; urgency=low * Merge bubulle@debian.org--2005/apt--main--0 up to patch-166: |