From acfe730660b33aa49f97740688c26e3725e1994c Mon Sep 17 00:00:00 2001 From: Arch Librarian Date: Mon, 20 Sep 2004 17:01:37 +0000 Subject: Fix segfault when handling /etc/apt/preferences. Author: doogie Date: 2003-05-19 17:58:26 GMT Fix segfault when handling /etc/apt/preferences. --- apt-pkg/versionmatch.cc | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'apt-pkg') diff --git a/apt-pkg/versionmatch.cc b/apt-pkg/versionmatch.cc index 1abb7e4ad..9e341852b 100644 --- a/apt-pkg/versionmatch.cc +++ b/apt-pkg/versionmatch.cc @@ -1,6 +1,6 @@ // -*- mode: cpp; mode: fold -*- // Description /*{{{*/ -// $Id: versionmatch.cc,v 1.8 2003/04/24 03:16:58 doogie Exp $ +// $Id: versionmatch.cc,v 1.9 2003/05/19 17:58:26 doogie Exp $ /* ###################################################################### Version Matching @@ -208,8 +208,12 @@ bool pkgVersionMatch::FileMatch(pkgCache::PkgFileIterator File) if (Type == Origin) { - if (!strcmp(File.Archive(), "now")) /* ignore local "status" file */ - return false; + if (OrSite.empty() == false) { + if (File->Site == 0 || OrSite != File.Site()) + return false; + } else // so we are talking about file:// or status file + if (strcmp(File.Site(),"") == 0 && File->Archive != 0) // skip the status file + return false; return (OrSite == File.Site()); /* both strings match */ } -- cgit v1.2.3