Package Manager - Abstacts the package manager
More work is needed in the area of transitioning provides, ie exim
- replacing smail. This can cause interesing side effects.
+ replacing smail. This can cause interesting side effects.
Other cases involving conflicts+replaces should be tested.
// PM::ImmediateAdd - Add the immediate flag recursivly /*{{{*/
// ---------------------------------------------------------------------
/* This adds the immediate flag to the pkg and recursively to the
- dependendies
+ dependencies
*/
void pkgPackageManager::ImmediateAdd(PkgIterator I, bool UseInstallVer, unsigned const int &Depth)
{
if (I->VersionList == 0)
continue;
- // Mark the package and its dependends for immediate configuration
+ // Mark the package and its dependents for immediate configuration
if ((((I->Flags & pkgCache::Flag::Essential) == pkgCache::Flag::Essential) &&
NoImmConfigure == false) || ImmConfigureAll)
{
// to do anything at all
for (DepIterator Cur = Start; true; ++Cur)
{
- std::unique_ptr<Version *> VList(Cur.AllTargets());
+ std::unique_ptr<Version *[]> VList(Cur.AllTargets());
for (Version **I = VList.get(); *I != 0; ++I)
{
// probably due to loops.
for (DepIterator Cur = Start; true; ++Cur)
{
- std::unique_ptr<Version *> VList(Cur.AllTargets());
+ std::unique_ptr<Version *[]> VList(Cur.AllTargets());
for (Version **I = VList.get(); *I != 0; ++I)
{
// Search for dependencies which are unpacked but aren't configured yet (maybe loops)
for (DepIterator Cur = Start; true; ++Cur)
{
- std::unique_ptr<Version *> VList(Cur.AllTargets());
+ std::unique_ptr<Version *[]> VList(Cur.AllTargets());
for (Version **I = VList.get(); *I != 0; ++I)
{
// Look for easy targets: packages that are already okay
for (DepIterator Cur = Start; Bad == true; ++Cur)
{
- std::unique_ptr<Version *> VList(Cur.AllTargets());
+ std::unique_ptr<Version *[]> VList(Cur.AllTargets());
for (Version **I = VList.get(); *I != 0; ++I)
{
VerIterator Ver(Cache,*I);
if (Debug)
{
clog << OutputInDepth(Depth) << "Avoidance unpack of " << ConflictPkg.FullName() << " failed for " << End << " ignoring:" << std::endl;
- _error->DumpErrors(std::clog);
+ _error->DumpErrors(std::clog, GlobalError::DEBUG, false);
}
_error->RevertToStack();
// ignorance can only happen if a) one of the offenders is already gone