Bug#192458: Fix the segfault fixing the code of pins with local repository
Hello,
The bellow patch a problem included in previous change for the entry
in changelog:
* Fix origin pins for file:// uris. Closes: #189014.
The previous fix was wrong and cause this.
Please include the fallowing like in changelog:
* Fix the segfault while processing the /etc/apt/preferences
file. Closes: 192458
The patch are bellow:
Index: apt-pkg/versionmatch.cc
===================================================================
RCS file: /cvs/deity/apt/apt-pkg/versionmatch.cc,v
retrieving revision 1.8
diff -u -r1.8 versionmatch.cc
--- apt-pkg/versionmatch.cc 24 Apr 2003 03:16:58 -0000 1.8
+++ apt-pkg/versionmatch.cc 8 May 2003 21:52:49 -0000
@@ -208,9 +208,14 @@
if (Type == Origin)
{
- if (!strcmp(File.Archive(), "now")) /* ignore local "status" file */
- return false;
- return (OrSite == File.Site()); /* both strings match */
+ 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();
}
return false;
--
O T A V I O S A L V A D O R
---------------------------------------------
E-mail: otavio@debian.org UIN: 5906116
GNU/Linux User: 239058 GPG ID: 49A5F855
Home Page: http://www.freedom.ind.br/otavio
---------------------------------------------
Reply to: