|
|
@@ -75,16 +75,16 @@ pkgCacheGenerator::pkgCacheGenerator(DynamicMMap *pMap,OpProgress *Prog) :
|
|
|
*Cache.HeaderP = pkgCache::Header();
|
|
|
|
|
|
// make room for the hashtables for packages and groups
|
|
|
- if (Map.RawAllocate(2 * (Cache.HeaderP->HashTableSize * sizeof(map_ptrloc))) == 0)
|
|
|
+ if (Map.RawAllocate(2 * (Cache.HeaderP->HashTableSize * sizeof(map_pointer_t))) == 0)
|
|
|
return;
|
|
|
|
|
|
- map_ptrloc const idxVerSysName = WriteStringInMap(_system->VS->Label);
|
|
|
+ map_stringitem_t const idxVerSysName = WriteStringInMap(_system->VS->Label);
|
|
|
if (unlikely(idxVerSysName == 0))
|
|
|
return;
|
|
|
Cache.HeaderP->VerSysName = idxVerSysName;
|
|
|
// this pointer is set in ReMap, but we need it now for WriteUniqString
|
|
|
Cache.StringItemP = (pkgCache::StringItem *)Map.Data();
|
|
|
- map_ptrloc const idxArchitecture = WriteUniqString(_config->Find("APT::Architecture"));
|
|
|
+ map_stringitem_t const idxArchitecture = WriteUniqString(_config->Find("APT::Architecture"));
|
|
|
if (unlikely(idxArchitecture == 0))
|
|
|
return;
|
|
|
Cache.HeaderP->Architecture = idxArchitecture;
|
|
|
@@ -96,7 +96,7 @@ pkgCacheGenerator::pkgCacheGenerator(DynamicMMap *pMap,OpProgress *Prog) :
|
|
|
std::string list = *a;
|
|
|
for (++a; a != archs.end(); ++a)
|
|
|
list.append(",").append(*a);
|
|
|
- map_ptrloc const idxArchitectures = WriteStringInMap(list);
|
|
|
+ map_stringitem_t const idxArchitectures = WriteStringInMap(list);
|
|
|
if (unlikely(idxArchitectures == 0))
|
|
|
return;
|
|
|
Cache.HeaderP->Architectures = idxArchitectures;
|
|
|
@@ -176,27 +176,27 @@ void pkgCacheGenerator::ReMap(void const * const oldMap, void const * const newM
|
|
|
(*i)->ReMap(oldMap, newMap);
|
|
|
} /*}}}*/
|
|
|
// CacheGenerator::WriteStringInMap /*{{{*/
|
|
|
-map_ptrloc pkgCacheGenerator::WriteStringInMap(const char *String,
|
|
|
+map_stringitem_t pkgCacheGenerator::WriteStringInMap(const char *String,
|
|
|
const unsigned long &Len) {
|
|
|
void const * const oldMap = Map.Data();
|
|
|
- map_ptrloc const index = Map.WriteString(String, Len);
|
|
|
+ map_stringitem_t const index = Map.WriteString(String, Len);
|
|
|
if (index != 0)
|
|
|
ReMap(oldMap, Map.Data());
|
|
|
return index;
|
|
|
}
|
|
|
/*}}}*/
|
|
|
// CacheGenerator::WriteStringInMap /*{{{*/
|
|
|
-map_ptrloc pkgCacheGenerator::WriteStringInMap(const char *String) {
|
|
|
+map_stringitem_t pkgCacheGenerator::WriteStringInMap(const char *String) {
|
|
|
void const * const oldMap = Map.Data();
|
|
|
- map_ptrloc const index = Map.WriteString(String);
|
|
|
+ map_stringitem_t const index = Map.WriteString(String);
|
|
|
if (index != 0)
|
|
|
ReMap(oldMap, Map.Data());
|
|
|
return index;
|
|
|
}
|
|
|
/*}}}*/
|
|
|
-map_ptrloc pkgCacheGenerator::AllocateInMap(const unsigned long &size) {/*{{{*/
|
|
|
+map_pointer_t pkgCacheGenerator::AllocateInMap(const unsigned long &size) {/*{{{*/
|
|
|
void const * const oldMap = Map.Data();
|
|
|
- map_ptrloc const index = Map.Allocate(size);
|
|
|
+ map_pointer_t const index = Map.Allocate(size);
|
|
|
if (index != 0)
|
|
|
ReMap(oldMap, Map.Data());
|
|
|
return index;
|
|
|
@@ -276,16 +276,16 @@ bool pkgCacheGenerator::MergeList(ListParser &List,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (Cache.HeaderP->PackageCount >= (1ULL<<sizeof(Cache.PkgP->ID)*8)-1)
|
|
|
+ if (Cache.HeaderP->PackageCount >= std::numeric_limits<map_id_t>::max())
|
|
|
return _error->Error(_("Wow, you exceeded the number of package "
|
|
|
"names this APT is capable of."));
|
|
|
- if (Cache.HeaderP->VersionCount >= (1ULL<<(sizeof(Cache.VerP->ID)*8))-1)
|
|
|
+ if (Cache.HeaderP->VersionCount >= std::numeric_limits<map_id_t>::max())
|
|
|
return _error->Error(_("Wow, you exceeded the number of versions "
|
|
|
"this APT is capable of."));
|
|
|
- if (Cache.HeaderP->DescriptionCount >= (1ULL<<(sizeof(Cache.DescP->ID)*8))-1)
|
|
|
+ if (Cache.HeaderP->DescriptionCount >= std::numeric_limits<map_id_t>::max())
|
|
|
return _error->Error(_("Wow, you exceeded the number of descriptions "
|
|
|
"this APT is capable of."));
|
|
|
- if (Cache.HeaderP->DependsCount >= (1ULL<<(sizeof(Cache.DepP->ID)*8))-1ULL)
|
|
|
+ if (Cache.HeaderP->DependsCount >= std::numeric_limits<map_id_t>::max())
|
|
|
return _error->Error(_("Wow, you exceeded the number of dependencies "
|
|
|
"this APT is capable of."));
|
|
|
|
|
|
@@ -336,7 +336,7 @@ bool pkgCacheGenerator::MergeListPackage(ListParser &List, pkgCache::PkgIterator
|
|
|
if (VerDesc.end() == true || MD5SumValue(VerDesc.md5()) != CurMd5)
|
|
|
continue;
|
|
|
|
|
|
- map_ptrloc md5idx = VerDesc->md5sum;
|
|
|
+ map_stringitem_t md5idx = VerDesc->md5sum;
|
|
|
for (std::vector<std::string>::const_iterator CurLang = availDesc.begin(); CurLang != availDesc.end(); ++CurLang)
|
|
|
{
|
|
|
// don't add a new description if we have one for the given
|
|
|
@@ -360,7 +360,7 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator
|
|
|
{
|
|
|
pkgCache::VerIterator Ver = Pkg.VersionList();
|
|
|
Dynamic<pkgCache::VerIterator> DynVer(Ver);
|
|
|
- map_ptrloc *LastVer = &Pkg->VersionList;
|
|
|
+ map_pointer_t *LastVer = &Pkg->VersionList;
|
|
|
void const * oldMap = Map.Data();
|
|
|
|
|
|
unsigned short const Hash = List.VersionHash();
|
|
|
@@ -405,13 +405,13 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator
|
|
|
}
|
|
|
|
|
|
// Add a new version
|
|
|
- map_ptrloc const verindex = NewVersion(Ver, Version, Pkg.Index(), Hash, *LastVer);
|
|
|
+ map_pointer_t const verindex = NewVersion(Ver, Version, Pkg.Index(), Hash, *LastVer);
|
|
|
if (verindex == 0 && _error->PendingError())
|
|
|
return _error->Error(_("Error occurred while processing %s (%s%d)"),
|
|
|
Pkg.Name(), "NewVersion", 1);
|
|
|
|
|
|
if (oldMap != Map.Data())
|
|
|
- LastVer += (map_ptrloc const * const) Map.Data() - (map_ptrloc const * const) oldMap;
|
|
|
+ LastVer += (map_pointer_t const * const) Map.Data() - (map_pointer_t const * const) oldMap;
|
|
|
*LastVer = verindex;
|
|
|
|
|
|
if (unlikely(List.NewVersion(Ver) == false))
|
|
|
@@ -472,7 +472,7 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator
|
|
|
D.ParentPkg().Group() == Grp)
|
|
|
continue;
|
|
|
|
|
|
- map_ptrloc *OldDepLast = NULL;
|
|
|
+ map_pointer_t *OldDepLast = NULL;
|
|
|
pkgCache::VerIterator ConVersion = D.ParentVer();
|
|
|
Dynamic<pkgCache::VerIterator> DynV(ConVersion);
|
|
|
// duplicate the Conflicts/Breaks/Replaces for :none arch
|
|
|
@@ -514,7 +514,7 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator
|
|
|
}
|
|
|
|
|
|
// We haven't found reusable descriptions, so add the first description(s)
|
|
|
- map_ptrloc md5idx = Ver->DescriptionList == 0 ? 0 : Ver.DescriptionList()->md5sum;
|
|
|
+ map_stringitem_t md5idx = Ver->DescriptionList == 0 ? 0 : Ver.DescriptionList()->md5sum;
|
|
|
std::vector<std::string> availDesc = List.AvailableDescriptionLanguages();
|
|
|
for (std::vector<std::string>::const_iterator CurLang = availDesc.begin(); CurLang != availDesc.end(); ++CurLang)
|
|
|
if (AddNewDescription(List, Ver, *CurLang, CurMd5, md5idx) == false)
|
|
|
@@ -522,12 +522,12 @@ bool pkgCacheGenerator::MergeListVersion(ListParser &List, pkgCache::PkgIterator
|
|
|
return true;
|
|
|
}
|
|
|
/*}}}*/
|
|
|
-bool pkgCacheGenerator::AddNewDescription(ListParser &List, pkgCache::VerIterator &Ver, std::string const &lang, MD5SumValue const &CurMd5, map_ptrloc &md5idx) /*{{{*/
|
|
|
+bool pkgCacheGenerator::AddNewDescription(ListParser &List, pkgCache::VerIterator &Ver, std::string const &lang, MD5SumValue const &CurMd5, map_stringitem_t &md5idx) /*{{{*/
|
|
|
{
|
|
|
pkgCache::DescIterator Desc;
|
|
|
Dynamic<pkgCache::DescIterator> DynDesc(Desc);
|
|
|
|
|
|
- map_ptrloc const descindex = NewDescription(Desc, lang, CurMd5, md5idx);
|
|
|
+ map_pointer_t const descindex = NewDescription(Desc, lang, CurMd5, md5idx);
|
|
|
if (unlikely(descindex == 0 && _error->PendingError()))
|
|
|
return _error->Error(_("Error occurred while processing %s (%s%d)"),
|
|
|
Ver.ParentPkg().Name(), "NewDescription", 1);
|
|
|
@@ -539,7 +539,7 @@ bool pkgCacheGenerator::AddNewDescription(ListParser &List, pkgCache::VerIterato
|
|
|
// that to be able to efficiently share these lists
|
|
|
pkgCache::DescIterator VerDesc = Ver.DescriptionList(); // old value might be invalid after ReMap
|
|
|
for (;VerDesc.end() == false && VerDesc->NextDesc != 0; ++VerDesc);
|
|
|
- map_ptrloc * const LastNextDesc = (VerDesc.end() == true) ? &Ver->DescriptionList : &VerDesc->NextDesc;
|
|
|
+ map_pointer_t * const LastNextDesc = (VerDesc.end() == true) ? &Ver->DescriptionList : &VerDesc->NextDesc;
|
|
|
*LastNextDesc = descindex;
|
|
|
|
|
|
if (NewFileDesc(Desc,List) == false)
|
|
|
@@ -611,19 +611,19 @@ bool pkgCacheGenerator::NewGroup(pkgCache::GrpIterator &Grp, const string &Name)
|
|
|
return true;
|
|
|
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Group = AllocateInMap(sizeof(pkgCache::Group));
|
|
|
+ map_pointer_t const Group = AllocateInMap(sizeof(pkgCache::Group));
|
|
|
if (unlikely(Group == 0))
|
|
|
return false;
|
|
|
|
|
|
Grp = pkgCache::GrpIterator(Cache, Cache.GrpP + Group);
|
|
|
- map_ptrloc const idxName = WriteStringInMap(Name);
|
|
|
+ map_pointer_t const idxName = WriteStringInMap(Name);
|
|
|
if (unlikely(idxName == 0))
|
|
|
return false;
|
|
|
Grp->Name = idxName;
|
|
|
|
|
|
// Insert it into the hash table
|
|
|
unsigned long const Hash = Cache.Hash(Name);
|
|
|
- map_ptrloc *insertAt = &Cache.HeaderP->GrpHashTable()[Hash];
|
|
|
+ map_pointer_t *insertAt = &Cache.HeaderP->GrpHashTable()[Hash];
|
|
|
while (*insertAt != 0 && strcasecmp(Name.c_str(), Cache.StrP + (Cache.GrpP + *insertAt)->Name) > 0)
|
|
|
insertAt = &(Cache.GrpP + *insertAt)->Next;
|
|
|
Grp->Next = *insertAt;
|
|
|
@@ -648,7 +648,7 @@ bool pkgCacheGenerator::NewPackage(pkgCache::PkgIterator &Pkg,const string &Name
|
|
|
return true;
|
|
|
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Package = AllocateInMap(sizeof(pkgCache::Package));
|
|
|
+ map_pointer_t const Package = AllocateInMap(sizeof(pkgCache::Package));
|
|
|
if (unlikely(Package == 0))
|
|
|
return false;
|
|
|
Pkg = pkgCache::PkgIterator(Cache,Cache.PkgP + Package);
|
|
|
@@ -658,8 +658,8 @@ bool pkgCacheGenerator::NewPackage(pkgCache::PkgIterator &Pkg,const string &Name
|
|
|
{
|
|
|
Grp->FirstPackage = Package;
|
|
|
// Insert it into the hash table
|
|
|
- unsigned long const Hash = Cache.Hash(Name);
|
|
|
- map_ptrloc *insertAt = &Cache.HeaderP->PkgHashTable()[Hash];
|
|
|
+ map_id_t const Hash = Cache.Hash(Name);
|
|
|
+ map_pointer_t *insertAt = &Cache.HeaderP->PkgHashTable()[Hash];
|
|
|
while (*insertAt != 0 && strcasecmp(Name.c_str(), Cache.StrP + (Cache.PkgP + *insertAt)->Name) > 0)
|
|
|
insertAt = &(Cache.PkgP + *insertAt)->Next;
|
|
|
Pkg->Next = *insertAt;
|
|
|
@@ -678,7 +678,7 @@ bool pkgCacheGenerator::NewPackage(pkgCache::PkgIterator &Pkg,const string &Name
|
|
|
Pkg->Name = Grp->Name;
|
|
|
Pkg->Group = Grp.Index();
|
|
|
// all is mapped to the native architecture
|
|
|
- map_ptrloc const idxArch = (Arch == "all") ? Cache.HeaderP->Architecture : WriteUniqString(Arch.c_str());
|
|
|
+ map_stringitem_t const idxArch = (Arch == "all") ? Cache.HeaderP->Architecture : WriteUniqString(Arch.c_str());
|
|
|
if (unlikely(idxArch == 0))
|
|
|
return false;
|
|
|
Pkg->Arch = idxArch;
|
|
|
@@ -695,14 +695,14 @@ bool pkgCacheGenerator::AddImplicitDepends(pkgCache::GrpIterator &G,
|
|
|
// copy P.Arch() into a string here as a cache remap
|
|
|
// in NewDepends() later may alter the pointer location
|
|
|
string Arch = P.Arch() == NULL ? "" : P.Arch();
|
|
|
- map_ptrloc *OldDepLast = NULL;
|
|
|
+ map_pointer_t *OldDepLast = NULL;
|
|
|
/* MultiArch handling introduces a lot of implicit Dependencies:
|
|
|
- MultiArch: same → Co-Installable if they have the same version
|
|
|
- All others conflict with all other group members */
|
|
|
bool const coInstall = ((V->MultiArch & pkgCache::Version::Same) == pkgCache::Version::Same);
|
|
|
pkgCache::PkgIterator D = G.PackageList();
|
|
|
Dynamic<pkgCache::PkgIterator> DynD(D);
|
|
|
- map_ptrloc const VerStrIdx = V->VerStr;
|
|
|
+ map_stringitem_t const VerStrIdx = V->VerStr;
|
|
|
for (; D.end() != true; D = G.NextPkg(D))
|
|
|
{
|
|
|
if (Arch == D.Arch() || D->VersionList == 0)
|
|
|
@@ -735,11 +735,11 @@ bool pkgCacheGenerator::AddImplicitDepends(pkgCache::VerIterator &V,
|
|
|
/* MultiArch handling introduces a lot of implicit Dependencies:
|
|
|
- MultiArch: same → Co-Installable if they have the same version
|
|
|
- All others conflict with all other group members */
|
|
|
- map_ptrloc *OldDepLast = NULL;
|
|
|
+ map_pointer_t *OldDepLast = NULL;
|
|
|
bool const coInstall = ((V->MultiArch & pkgCache::Version::Same) == pkgCache::Version::Same);
|
|
|
if (coInstall == true)
|
|
|
{
|
|
|
- map_ptrloc const VerStrIdx = V->VerStr;
|
|
|
+ map_stringitem_t const VerStrIdx = V->VerStr;
|
|
|
// Replaces: ${self}:other ( << ${binary:Version})
|
|
|
NewDepends(D, V, VerStrIdx,
|
|
|
pkgCache::Dep::Less, pkgCache::Dep::Replaces,
|
|
|
@@ -768,7 +768,7 @@ bool pkgCacheGenerator::NewFileVer(pkgCache::VerIterator &Ver,
|
|
|
return true;
|
|
|
|
|
|
// Get a structure
|
|
|
- map_ptrloc const VerFile = AllocateInMap(sizeof(pkgCache::VerFile));
|
|
|
+ map_pointer_t const VerFile = AllocateInMap(sizeof(pkgCache::VerFile));
|
|
|
if (VerFile == 0)
|
|
|
return 0;
|
|
|
|
|
|
@@ -776,7 +776,7 @@ bool pkgCacheGenerator::NewFileVer(pkgCache::VerIterator &Ver,
|
|
|
VF->File = CurrentFile - Cache.PkgFileP;
|
|
|
|
|
|
// Link it to the end of the list
|
|
|
- map_ptrloc *Last = &Ver->FileList;
|
|
|
+ map_pointer_t *Last = &Ver->FileList;
|
|
|
for (pkgCache::VerFileIterator V = Ver.FileList(); V.end() == false; ++V)
|
|
|
Last = &V->NextFile;
|
|
|
VF->NextFile = *Last;
|
|
|
@@ -794,14 +794,14 @@ bool pkgCacheGenerator::NewFileVer(pkgCache::VerIterator &Ver,
|
|
|
// CacheGenerator::NewVersion - Create a new Version /*{{{*/
|
|
|
// ---------------------------------------------------------------------
|
|
|
/* This puts a version structure in the linked list */
|
|
|
-unsigned long pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver,
|
|
|
+map_pointer_t pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver,
|
|
|
const string &VerStr,
|
|
|
- map_ptrloc const ParentPkg,
|
|
|
- unsigned long const Hash,
|
|
|
- unsigned long Next)
|
|
|
+ map_pointer_t const ParentPkg,
|
|
|
+ unsigned short const Hash,
|
|
|
+ map_pointer_t const Next)
|
|
|
{
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Version = AllocateInMap(sizeof(pkgCache::Version));
|
|
|
+ map_pointer_t const Version = AllocateInMap(sizeof(pkgCache::Version));
|
|
|
if (Version == 0)
|
|
|
return 0;
|
|
|
|
|
|
@@ -836,7 +836,7 @@ unsigned long pkgCacheGenerator::NewVersion(pkgCache::VerIterator &Ver,
|
|
|
}
|
|
|
}
|
|
|
// haven't found the version string, so create
|
|
|
- map_ptrloc const idxVerStr = WriteStringInMap(VerStr);
|
|
|
+ map_stringitem_t const idxVerStr = WriteStringInMap(VerStr);
|
|
|
if (unlikely(idxVerStr == 0))
|
|
|
return 0;
|
|
|
Ver->VerStr = idxVerStr;
|
|
|
@@ -853,7 +853,7 @@ bool pkgCacheGenerator::NewFileDesc(pkgCache::DescIterator &Desc,
|
|
|
return true;
|
|
|
|
|
|
// Get a structure
|
|
|
- map_ptrloc const DescFile = AllocateInMap(sizeof(pkgCache::DescFile));
|
|
|
+ map_pointer_t const DescFile = AllocateInMap(sizeof(pkgCache::DescFile));
|
|
|
if (DescFile == 0)
|
|
|
return false;
|
|
|
|
|
|
@@ -861,7 +861,7 @@ bool pkgCacheGenerator::NewFileDesc(pkgCache::DescIterator &Desc,
|
|
|
DF->File = CurrentFile - Cache.PkgFileP;
|
|
|
|
|
|
// Link it to the end of the list
|
|
|
- map_ptrloc *Last = &Desc->FileList;
|
|
|
+ map_pointer_t *Last = &Desc->FileList;
|
|
|
for (pkgCache::DescFileIterator D = Desc.FileList(); D.end() == false; ++D)
|
|
|
Last = &D->NextFile;
|
|
|
|
|
|
@@ -880,20 +880,20 @@ bool pkgCacheGenerator::NewFileDesc(pkgCache::DescIterator &Desc,
|
|
|
// CacheGenerator::NewDescription - Create a new Description /*{{{*/
|
|
|
// ---------------------------------------------------------------------
|
|
|
/* This puts a description structure in the linked list */
|
|
|
-map_ptrloc pkgCacheGenerator::NewDescription(pkgCache::DescIterator &Desc,
|
|
|
+map_pointer_t pkgCacheGenerator::NewDescription(pkgCache::DescIterator &Desc,
|
|
|
const string &Lang,
|
|
|
const MD5SumValue &md5sum,
|
|
|
- map_ptrloc idxmd5str)
|
|
|
+ map_stringitem_t const idxmd5str)
|
|
|
{
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Description = AllocateInMap(sizeof(pkgCache::Description));
|
|
|
+ map_pointer_t const Description = AllocateInMap(sizeof(pkgCache::Description));
|
|
|
if (Description == 0)
|
|
|
return 0;
|
|
|
|
|
|
// Fill it in
|
|
|
Desc = pkgCache::DescIterator(Cache,Cache.DescP + Description);
|
|
|
Desc->ID = Cache.HeaderP->DescriptionCount++;
|
|
|
- map_ptrloc const idxlanguage_code = WriteUniqString(Lang);
|
|
|
+ map_stringitem_t const idxlanguage_code = WriteUniqString(Lang);
|
|
|
if (unlikely(idxlanguage_code == 0))
|
|
|
return 0;
|
|
|
Desc->language_code = idxlanguage_code;
|
|
|
@@ -902,7 +902,7 @@ map_ptrloc pkgCacheGenerator::NewDescription(pkgCache::DescIterator &Desc,
|
|
|
Desc->md5sum = idxmd5str;
|
|
|
else
|
|
|
{
|
|
|
- map_ptrloc const idxmd5sum = WriteStringInMap(md5sum.Value());
|
|
|
+ map_stringitem_t const idxmd5sum = WriteStringInMap(md5sum.Value());
|
|
|
if (unlikely(idxmd5sum == 0))
|
|
|
return 0;
|
|
|
Desc->md5sum = idxmd5sum;
|
|
|
@@ -920,9 +920,9 @@ bool pkgCacheGenerator::NewDepends(pkgCache::PkgIterator &Pkg,
|
|
|
string const &Version,
|
|
|
unsigned int const &Op,
|
|
|
unsigned int const &Type,
|
|
|
- map_ptrloc* &OldDepLast)
|
|
|
+ map_stringitem_t* &OldDepLast)
|
|
|
{
|
|
|
- map_ptrloc index = 0;
|
|
|
+ map_stringitem_t index = 0;
|
|
|
if (Version.empty() == false)
|
|
|
{
|
|
|
int const CmpOp = Op & 0x0F;
|
|
|
@@ -937,21 +937,21 @@ bool pkgCacheGenerator::NewDepends(pkgCache::PkgIterator &Pkg,
|
|
|
if (unlikely(index == 0))
|
|
|
return false;
|
|
|
if (OldDepLast != 0 && oldMap != Map.Data())
|
|
|
- OldDepLast += (map_ptrloc const * const) Map.Data() - (map_ptrloc const * const) oldMap;
|
|
|
+ OldDepLast += (map_pointer_t const * const) Map.Data() - (map_pointer_t const * const) oldMap;
|
|
|
}
|
|
|
}
|
|
|
return NewDepends(Pkg, Ver, index, Op, Type, OldDepLast);
|
|
|
}
|
|
|
bool pkgCacheGenerator::NewDepends(pkgCache::PkgIterator &Pkg,
|
|
|
pkgCache::VerIterator &Ver,
|
|
|
- map_ptrloc const Version,
|
|
|
+ map_pointer_t const Version,
|
|
|
unsigned int const &Op,
|
|
|
unsigned int const &Type,
|
|
|
- map_ptrloc* &OldDepLast)
|
|
|
+ map_pointer_t* &OldDepLast)
|
|
|
{
|
|
|
void const * const oldMap = Map.Data();
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Dependency = AllocateInMap(sizeof(pkgCache::Dependency));
|
|
|
+ map_pointer_t const Dependency = AllocateInMap(sizeof(pkgCache::Dependency));
|
|
|
if (unlikely(Dependency == 0))
|
|
|
return false;
|
|
|
|
|
|
@@ -976,7 +976,7 @@ bool pkgCacheGenerator::NewDepends(pkgCache::PkgIterator &Pkg,
|
|
|
for (pkgCache::DepIterator D = Ver.DependsList(); D.end() == false; ++D)
|
|
|
OldDepLast = &D->NextDepends;
|
|
|
} else if (oldMap != Map.Data())
|
|
|
- OldDepLast += (map_ptrloc const * const) Map.Data() - (map_ptrloc const * const) oldMap;
|
|
|
+ OldDepLast += (map_pointer_t const * const) Map.Data() - (map_pointer_t const * const) oldMap;
|
|
|
|
|
|
Dep->NextDepends = *OldDepLast;
|
|
|
*OldDepLast = Dep.Index();
|
|
|
@@ -1041,7 +1041,7 @@ bool pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator &Ver,
|
|
|
return true;
|
|
|
|
|
|
// Get a structure
|
|
|
- map_ptrloc const Provides = Owner->AllocateInMap(sizeof(pkgCache::Provides));
|
|
|
+ map_pointer_t const Provides = Owner->AllocateInMap(sizeof(pkgCache::Provides));
|
|
|
if (unlikely(Provides == 0))
|
|
|
return false;
|
|
|
Cache.HeaderP->ProvidesCount++;
|
|
|
@@ -1053,7 +1053,7 @@ bool pkgCacheGenerator::ListParser::NewProvides(pkgCache::VerIterator &Ver,
|
|
|
Prv->NextPkgProv = Ver->ProvidesList;
|
|
|
Ver->ProvidesList = Prv.Index();
|
|
|
if (Version.empty() == false) {
|
|
|
- map_ptrloc const idxProvideVersion = WriteString(Version);
|
|
|
+ map_stringitem_t const idxProvideVersion = WriteString(Version);
|
|
|
Prv->ProvideVersion = idxProvideVersion;
|
|
|
if (unlikely(idxProvideVersion == 0))
|
|
|
return false;
|
|
|
@@ -1088,14 +1088,14 @@ bool pkgCacheGenerator::SelectFile(const string &File,const string &Site,
|
|
|
unsigned long Flags)
|
|
|
{
|
|
|
// Get some space for the structure
|
|
|
- map_ptrloc const idxFile = AllocateInMap(sizeof(*CurrentFile));
|
|
|
+ map_pointer_t const idxFile = AllocateInMap(sizeof(*CurrentFile));
|
|
|
if (unlikely(idxFile == 0))
|
|
|
return false;
|
|
|
CurrentFile = Cache.PkgFileP + idxFile;
|
|
|
|
|
|
// Fill it in
|
|
|
- map_ptrloc const idxFileName = WriteStringInMap(File);
|
|
|
- map_ptrloc const idxSite = WriteUniqString(Site);
|
|
|
+ map_stringitem_t const idxFileName = WriteStringInMap(File);
|
|
|
+ map_stringitem_t const idxSite = WriteUniqString(Site);
|
|
|
if (unlikely(idxFileName == 0 || idxSite == 0))
|
|
|
return false;
|
|
|
CurrentFile->FileName = idxFileName;
|
|
|
@@ -1103,7 +1103,7 @@ bool pkgCacheGenerator::SelectFile(const string &File,const string &Site,
|
|
|
CurrentFile->NextFile = Cache.HeaderP->FileList;
|
|
|
CurrentFile->Flags = Flags;
|
|
|
CurrentFile->ID = Cache.HeaderP->PackageFileCount;
|
|
|
- map_ptrloc const idxIndexType = WriteUniqString(Index.GetType()->Label);
|
|
|
+ map_stringitem_t const idxIndexType = WriteUniqString(Index.GetType()->Label);
|
|
|
if (unlikely(idxIndexType == 0))
|
|
|
return false;
|
|
|
CurrentFile->IndexType = idxIndexType;
|
|
|
@@ -1120,7 +1120,7 @@ bool pkgCacheGenerator::SelectFile(const string &File,const string &Site,
|
|
|
// ---------------------------------------------------------------------
|
|
|
/* This is used to create handles to strings. Given the same text it
|
|
|
always returns the same number */
|
|
|
-unsigned long pkgCacheGenerator::WriteUniqString(const char *S,
|
|
|
+map_stringitem_t pkgCacheGenerator::WriteUniqString(const char *S,
|
|
|
unsigned int Size)
|
|
|
{
|
|
|
/* We use a very small transient hash table here, this speeds up generation
|
|
|
@@ -1133,7 +1133,7 @@ unsigned long pkgCacheGenerator::WriteUniqString(const char *S,
|
|
|
// Search for an insertion point
|
|
|
pkgCache::StringItem *I = Cache.StringItemP + Cache.HeaderP->StringList;
|
|
|
int Res = 1;
|
|
|
- map_ptrloc *Last = &Cache.HeaderP->StringList;
|
|
|
+ map_stringitem_t *Last = &Cache.HeaderP->StringList;
|
|
|
for (; I != Cache.StringItemP; Last = &I->NextItem,
|
|
|
I = Cache.StringItemP + I->NextItem)
|
|
|
{
|
|
|
@@ -1151,15 +1151,15 @@ unsigned long pkgCacheGenerator::WriteUniqString(const char *S,
|
|
|
|
|
|
// Get a structure
|
|
|
void const * const oldMap = Map.Data();
|
|
|
- map_ptrloc const Item = AllocateInMap(sizeof(pkgCache::StringItem));
|
|
|
+ map_pointer_t const Item = AllocateInMap(sizeof(pkgCache::StringItem));
|
|
|
if (Item == 0)
|
|
|
return 0;
|
|
|
|
|
|
- map_ptrloc const idxString = WriteStringInMap(S,Size);
|
|
|
+ map_stringitem_t const idxString = WriteStringInMap(S,Size);
|
|
|
if (unlikely(idxString == 0))
|
|
|
return 0;
|
|
|
if (oldMap != Map.Data()) {
|
|
|
- Last += (map_ptrloc const * const) Map.Data() - (map_ptrloc const * const) oldMap;
|
|
|
+ Last += (map_pointer_t const * const) Map.Data() - (map_pointer_t const * const) oldMap;
|
|
|
I += (pkgCache::StringItem const * const) Map.Data() - (pkgCache::StringItem const * const) oldMap;
|
|
|
}
|
|
|
*Last = Item;
|
|
|
@@ -1280,9 +1280,9 @@ static bool CheckValidity(const string &CacheFile,
|
|
|
// ---------------------------------------------------------------------
|
|
|
/* Size is kind of an abstract notion that is only used for the progress
|
|
|
meter */
|
|
|
-static unsigned long ComputeSize(FileIterator Start,FileIterator End)
|
|
|
+static map_filesize_t ComputeSize(FileIterator Start,FileIterator End)
|
|
|
{
|
|
|
- unsigned long TotalSize = 0;
|
|
|
+ map_filesize_t TotalSize = 0;
|
|
|
for (; Start < End; ++Start)
|
|
|
{
|
|
|
if ((*Start)->HasPackages() == false)
|
|
|
@@ -1297,7 +1297,7 @@ static unsigned long ComputeSize(FileIterator Start,FileIterator End)
|
|
|
/* */
|
|
|
static bool BuildCache(pkgCacheGenerator &Gen,
|
|
|
OpProgress *Progress,
|
|
|
- unsigned long &CurrentSize,unsigned long TotalSize,
|
|
|
+ map_filesize_t &CurrentSize,map_filesize_t TotalSize,
|
|
|
FileIterator Start, FileIterator End)
|
|
|
{
|
|
|
FileIterator I;
|
|
|
@@ -1316,7 +1316,7 @@ static bool BuildCache(pkgCacheGenerator &Gen,
|
|
|
continue;
|
|
|
}
|
|
|
|
|
|
- unsigned long Size = (*I)->Size();
|
|
|
+ map_filesize_t Size = (*I)->Size();
|
|
|
if (Progress != NULL)
|
|
|
Progress->OverallProgress(CurrentSize,TotalSize,Size,_("Reading package lists"));
|
|
|
CurrentSize += Size;
|
|
|
@@ -1333,7 +1333,7 @@ static bool BuildCache(pkgCacheGenerator &Gen,
|
|
|
CurrentSize = 0;
|
|
|
for (I = Start; I != End; ++I)
|
|
|
{
|
|
|
- unsigned long Size = (*I)->Size();
|
|
|
+ map_filesize_t Size = (*I)->Size();
|
|
|
if (Progress != NULL)
|
|
|
Progress->OverallProgress(CurrentSize,TotalSize,Size,_("Collecting File Provides"));
|
|
|
CurrentSize += Size;
|
|
|
@@ -1347,9 +1347,9 @@ static bool BuildCache(pkgCacheGenerator &Gen,
|
|
|
/*}}}*/
|
|
|
// CacheGenerator::CreateDynamicMMap - load an mmap with configuration options /*{{{*/
|
|
|
DynamicMMap* pkgCacheGenerator::CreateDynamicMMap(FileFd *CacheF, unsigned long Flags) {
|
|
|
- unsigned long const MapStart = _config->FindI("APT::Cache-Start", 24*1024*1024);
|
|
|
- unsigned long const MapGrow = _config->FindI("APT::Cache-Grow", 1*1024*1024);
|
|
|
- unsigned long const MapLimit = _config->FindI("APT::Cache-Limit", 0);
|
|
|
+ map_filesize_t const MapStart = _config->FindI("APT::Cache-Start", 24*1024*1024);
|
|
|
+ map_filesize_t const MapGrow = _config->FindI("APT::Cache-Grow", 1*1024*1024);
|
|
|
+ map_filesize_t const MapLimit = _config->FindI("APT::Cache-Limit", 0);
|
|
|
Flags |= MMap::Moveable;
|
|
|
if (_config->FindB("APT::Cache-Fallback", false) == true)
|
|
|
Flags |= MMap::Fallback;
|
|
|
@@ -1387,7 +1387,7 @@ bool pkgCacheGenerator::MakeStatusCache(pkgSourceList &List,OpProgress *Progress
|
|
|
Files.push_back (*j);
|
|
|
}
|
|
|
|
|
|
- unsigned long const EndOfSource = Files.size();
|
|
|
+ map_filesize_t const EndOfSource = Files.size();
|
|
|
if (_system->AddStatusFiles(Files) == false)
|
|
|
return false;
|
|
|
|
|
|
@@ -1477,8 +1477,8 @@ bool pkgCacheGenerator::MakeStatusCache(pkgSourceList &List,OpProgress *Progress
|
|
|
}
|
|
|
|
|
|
// Lets try the source cache.
|
|
|
- unsigned long CurrentSize = 0;
|
|
|
- unsigned long TotalSize = 0;
|
|
|
+ map_filesize_t CurrentSize = 0;
|
|
|
+ map_filesize_t TotalSize = 0;
|
|
|
if (CheckValidity(SrcCacheFile, List, Files.begin(),
|
|
|
Files.begin()+EndOfSource) == true)
|
|
|
{
|
|
|
@@ -1486,7 +1486,7 @@ bool pkgCacheGenerator::MakeStatusCache(pkgSourceList &List,OpProgress *Progress
|
|
|
std::clog << "srcpkgcache.bin is valid - populate MMap with it." << std::endl;
|
|
|
// Preload the map with the source cache
|
|
|
FileFd SCacheF(SrcCacheFile,FileFd::ReadOnly);
|
|
|
- unsigned long const alloc = Map->RawAllocate(SCacheF.Size());
|
|
|
+ map_pointer_t const alloc = Map->RawAllocate(SCacheF.Size());
|
|
|
if ((alloc == 0 && _error->PendingError())
|
|
|
|| SCacheF.Read((unsigned char *)Map->Data() + alloc,
|
|
|
SCacheF.Size()) == false)
|
|
|
@@ -1573,13 +1573,13 @@ APT_DEPRECATED bool pkgMakeOnlyStatusCache(OpProgress &Progress,DynamicMMap **Ou
|
|
|
bool pkgCacheGenerator::MakeOnlyStatusCache(OpProgress *Progress,DynamicMMap **OutMap)
|
|
|
{
|
|
|
std::vector<pkgIndexFile *> Files;
|
|
|
- unsigned long EndOfSource = Files.size();
|
|
|
+ map_filesize_t EndOfSource = Files.size();
|
|
|
if (_system->AddStatusFiles(Files) == false)
|
|
|
return false;
|
|
|
|
|
|
SPtr<DynamicMMap> Map = CreateDynamicMMap(NULL);
|
|
|
- unsigned long CurrentSize = 0;
|
|
|
- unsigned long TotalSize = 0;
|
|
|
+ map_filesize_t CurrentSize = 0;
|
|
|
+ map_filesize_t TotalSize = 0;
|
|
|
|
|
|
TotalSize = ComputeSize(Files.begin()+EndOfSource,Files.end());
|
|
|
|