]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/pkgsystem.h
Fix double free (closes: #711045)
[apt.git] / apt-pkg / pkgsystem.h
index 7d0e42d1330a9367d6d48286e66bbde1c3affd2f..75f7b9fcc3b6a236fa3b500b94e76d1c4d0c5587 100644 (file)
@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description                                                         /*{{{*/
-// $Id: pkgsystem.h,v 1.2 2001/02/20 07:03:17 jgg Exp $
+// $Id: pkgsystem.h,v 1.6 2002/11/11 06:55:50 doogie Exp $
 /* ######################################################################
 
    System - Abstraction for running on different systems.
 #ifndef PKGLIB_PKGSYSTEM_H
 #define PKGLIB_PKGSYSTEM_H
 
-#ifdef __GNUG__
-#pragma interface "apt-pkg/pkgsystem.h"
-#endif
+#include <apt-pkg/pkgcache.h>
+
+#include <vector>
 
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/depcache.h>
-#include <vector.h>
-    
+#endif
+
+class pkgDepCache;
 class pkgPackageManager;
 class pkgVersioningSystem;
 class Configuration;
 class pkgIndexFile;
+class PkgFileIterator;
 
 class pkgSystem
 {   
@@ -72,18 +75,20 @@ class pkgSystem
 
    /* Load environment specific configuration and perform any other setup
       necessary */
-   virtual bool Initialize(Configuration &Cnf) {return true;};
+   virtual bool Initialize(Configuration &/*Cnf*/) {return true;};
    
    /* Type is some kind of Globally Unique way of differentiating
       archive file types.. */
    virtual bool ArchiveSupported(const char *Type) = 0;
 
    // Return a list of system index files..
-   virtual bool AddStatusFiles(vector<pkgIndexFile *> &List) = 0;   
+   virtual bool AddStatusFiles(std::vector<pkgIndexFile *> &List) = 0;   
+   virtual bool FindIndex(pkgCache::PkgFileIterator File,
+                         pkgIndexFile *&Found) const = 0;
    
    /* Evauluate how 'right' we are for this system based on the filesystem
       etc.. */
-   virtual signed Score(Configuration const &Cnf) {return 0;};
+   virtual signed Score(Configuration const &/*Cnf*/) {return 0;};
    
    pkgSystem();
    virtual ~pkgSystem() {};