X-Git-Url: https://git.saurik.com/apt.git/blobdiff_plain/4b2746d5ff7d6c5ed3b23a44a67fc323475cfd7d..dabb215cb8c4b074d286737da523d8ef14381468:/apt-pkg/tagfile.h

diff --git a/apt-pkg/tagfile.h b/apt-pkg/tagfile.h
index 68f1642d9..fd24471c1 100644
--- a/apt-pkg/tagfile.h
+++ b/apt-pkg/tagfile.h
@@ -20,9 +20,15 @@
 #ifndef PKGLIB_TAGFILE_H
 #define PKGLIB_TAGFILE_H
 
+#include <stdio.h>
+
+#include <string>
 
+#ifndef APT_8_CLEANER_HEADERS
 #include <apt-pkg/fileutl.h>
-#include <stdio.h>
+#endif
+
+class FileFd;
 
 class pkgTagSection
 {
@@ -31,11 +37,8 @@ class pkgTagSection
    unsigned int Indexes[256];
    unsigned int AlphaIndexes[0x100];
    unsigned int TagCount;
-   // for later
-   int *reserved1;
-   int *reserved2;
-   int *reserved3;
-   int *reserved4;
+   // dpointer placeholder (for later in case we need it)
+   void *d;
 
    /* This very simple hash function for the last 8 letters gives
       very good performance on the debian package files */
@@ -57,11 +60,13 @@ class pkgTagSection
    
    bool Find(const char *Tag,const char *&Start, const char *&End) const;
    bool Find(const char *Tag,unsigned &Pos) const;
-   string FindS(const char *Tag) const;
+   std::string FindS(const char *Tag) const;
    signed int FindI(const char *Tag,signed long Default = 0) const ;
    unsigned long long FindULL(const char *Tag, unsigned long long const &Default = 0) const;
    bool FindFlag(const char *Tag,unsigned long &Flags,
 		 unsigned long Flag) const;
+   bool static const FindFlag(unsigned long &Flags, unsigned long Flag,
+				const char* Start, const char* Stop);
    bool Scan(const char *Start,unsigned long MaxLength);
    inline unsigned long size() const {return Stop - Section;};
    void Trim();
@@ -79,7 +84,8 @@ class pkgTagSection
       Stop = this->Stop;
    };
    
-   pkgTagSection() : Section(0), Stop(0) {};
+   pkgTagSection() : Section(0), TagCount(0), Stop(0) {};
+   virtual ~pkgTagSection() {};
 };
 
 class pkgTagFilePrivate;
@@ -94,10 +100,10 @@ class pkgTagFile
 
    bool Step(pkgTagSection &Section);
    unsigned long Offset();
-   bool Jump(pkgTagSection &Tag,unsigned long Offset);
+   bool Jump(pkgTagSection &Tag,unsigned long long Offset);
 
-   pkgTagFile(FileFd *F,unsigned long Size = 32*1024);
-   ~pkgTagFile();
+   pkgTagFile(FileFd *F,unsigned long long Size = 32*1024);
+   virtual ~pkgTagFile();
 };
 
 /* This is the list of things to rewrite. The rewriter