summaryrefslogtreecommitdiff
path: root/apt-pkg
diff options
context:
space:
mode:
authorMichael Vogt <michael.vogt@ubuntu.com>2007-07-09 17:26:23 +0100
committerMichael Vogt <michael.vogt@ubuntu.com>2007-07-09 17:26:23 +0100
commit89b52526ec245cacdbac1b4aee6c877dc9a410e4 (patch)
treeaefd59c6227ad18395a06892a8dd3371776995a1 /apt-pkg
parentd52cf756b5e14c200ba502bed546254e464799cc (diff)
parent6724d2173133f24bc8a3875c13513761f9340627 (diff)
* merged apt--mvo
* reverted b-d changes * make upate-po
Diffstat (limited to 'apt-pkg')
-rw-r--r--apt-pkg/contrib/configuration.cc5
-rw-r--r--apt-pkg/depcache.cc10
-rw-r--r--apt-pkg/pkgcachegen.cc4
-rw-r--r--apt-pkg/pkgrecords.cc11
4 files changed, 16 insertions, 14 deletions
diff --git a/apt-pkg/contrib/configuration.cc b/apt-pkg/contrib/configuration.cc
index c60ad3b0a..7914bd07b 100644
--- a/apt-pkg/contrib/configuration.cc
+++ b/apt-pkg/contrib/configuration.cc
@@ -422,6 +422,7 @@ bool Configuration::ExistsAny(const char *Name) const
string key = Name;
if (key.size() > 2 && key.end()[-2] == '/')
+ {
if (key.find_first_of("fdbi",key.size()-1) < key.size())
{
key.resize(key.size() - 2);
@@ -432,7 +433,7 @@ bool Configuration::ExistsAny(const char *Name) const
{
_error->Warning(_("Unrecognized type abbreviation: '%c'"), key.end()[-3]);
}
-
+ }
return Exists(Name);
}
/*}}}*/
@@ -506,7 +507,7 @@ bool ReadConfigFile(Configuration &Conf,const string &FName,bool AsSectional,
CurLine++;
// This should be made to work instead, but this is better than looping
if (F.fail() && !F.eof())
- return _error->Error(_("Line %d too long (max %d)"), CurLine, sizeof(Buffer));
+ return _error->Error(_("Line %d too long (max %lu)"), CurLine, sizeof(Buffer));
_strtabexpand(Buffer,sizeof(Buffer));
_strstrip(Buffer);
diff --git a/apt-pkg/depcache.cc b/apt-pkg/depcache.cc
index ca9636cc1..769bd072e 100644
--- a/apt-pkg/depcache.cc
+++ b/apt-pkg/depcache.cc
@@ -216,7 +216,6 @@ bool pkgDepCache::writeStateFile(OpProgress *prog, bool InstalledOnly)
pkgCache::PkgIterator pkg=Cache->FindPkg(pkgname);
if(pkg.end() || pkg.VersionList().end())
continue;
- bool oldAuto = section.FindI("Auto-Installed");
bool newAuto = (PkgState[pkg->ID].Flags & Flag::Auto);
if(_config->FindB("Debug::pkgAutoRemove",false))
std::clog << "Update exisiting AutoInstall info: "
@@ -1286,6 +1285,7 @@ void pkgDepCache::MarkPackage(const pkgCache::PkgIterator &pkg,
bool follow_suggests)
{
pkgDepCache::StateCache &state = PkgState[pkg->ID];
+ VerIterator currver = pkg.CurrentVer();
VerIterator candver = state.CandidateVerIter(*this);
VerIterator instver = state.InstVerIter(*this);
@@ -1306,9 +1306,11 @@ void pkgDepCache::MarkPackage(const pkgCache::PkgIterator &pkg,
}
#endif
- // Ignore versions other than the InstVer, and ignore packages
- // that are already going to be removed or just left uninstalled.
- if(!(ver == instver && !instver.end()))
+ // For packages that are not going to be removed, ignore versions
+ // other than the InstVer. For packages that are going to be
+ // removed, ignore versions other than the current version.
+ if(!(ver == instver && !instver.end()) &&
+ !(ver == currver && instver.end() && !ver.end()))
return;
// if we are marked already we are done
diff --git a/apt-pkg/pkgcachegen.cc b/apt-pkg/pkgcachegen.cc
index ce9b96980..4e186f466 100644
--- a/apt-pkg/pkgcachegen.cc
+++ b/apt-pkg/pkgcachegen.cc
@@ -150,7 +150,7 @@ bool pkgCacheGenerator::MergeList(ListParser &List,
Desc->ParentPkg = Pkg.Index();
if (NewFileDesc(Desc,List) == false)
- return _error->Error(_("Error occured while processing %s (NewFileDesc1)"),PackageName.c_str());
+ return _error->Error(_("Error occurred while processing %s (NewFileDesc1)"),PackageName.c_str());
break;
}
}
@@ -242,7 +242,7 @@ bool pkgCacheGenerator::MergeList(ListParser &List,
Desc->ParentPkg = Pkg.Index();
if (NewFileDesc(Desc,List) == false)
- return _error->Error(_("Error occured while processing %s (NewFileDesc2)"),PackageName.c_str());
+ return _error->Error(_("Error occurred while processing %s (NewFileDesc2)"),PackageName.c_str());
}
FoundFileDeps |= List.HasFileDeps();
diff --git a/apt-pkg/pkgrecords.cc b/apt-pkg/pkgrecords.cc
index d251bee41..a5dab22ff 100644
--- a/apt-pkg/pkgrecords.cc
+++ b/apt-pkg/pkgrecords.cc
@@ -20,7 +20,7 @@
// Records::pkgRecords - Constructor /*{{{*/
// ---------------------------------------------------------------------
/* This will create the necessary structures to access the status files */
-pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache),
+pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache),
Files(Cache.HeaderP->PackageFileCount)
{
for (pkgCache::PkgFileIterator I = Cache.FileBegin();
@@ -29,14 +29,14 @@ pkgRecords::pkgRecords(pkgCache &Cache) : Cache(Cache),
const pkgIndexFile::Type *Type = pkgIndexFile::Type::GetType(I.IndexType());
if (Type == 0)
{
- _error->Error(_("Index file type '%s' is not supported"),I.IndexType());
- return;
+ _error->Error(_("Index file type '%s' is not supported"),I.IndexType());
+ return;
}
Files[I->ID] = Type->CreatePkgParser(I);
if (Files[I->ID] == 0)
- return;
- }
+ return;
+ }
}
/*}}}*/
// Records::~pkgRecords - Destructor /*{{{*/
@@ -50,7 +50,6 @@ pkgRecords::~pkgRecords()
{
delete *it;
}
-
}
/*}}}*/
// Records::Lookup - Get a parser for the package version file /*{{{*/