]> git.saurik.com Git - apt.git/commitdiff
Remap another (non-parameter) StringView
authorJulian Andres Klode <jak@debian.org>
Sat, 23 Jan 2016 14:37:59 +0000 (15:37 +0100)
committerJulian Andres Klode <jak@debian.org>
Sat, 23 Jan 2016 14:40:17 +0000 (15:40 +0100)
I only looked at parameters in the previous commit, which was
not enough: One place also generated local string views. In this
case, we only need to make ArchA dynamic, as NameA is not used
after the FindPkg() call.

Gbp-Dch: ignore

apt-pkg/pkgcachegen.cc

index d8f161e6de44b1998a345db6a85f65e8ff3f0007..55d1ee89de2c27e4fcffa825758a4e87c42a97a6 100644 (file)
@@ -661,10 +661,12 @@ bool pkgCacheGenerator::NewPackage(pkgCache::PkgIterator &Pkg, StringView Name,
    {
       size_t const found = Name.find(':');
       StringView const NameA = Name.substr(0, found);
-      StringView const ArchA = Name.substr(found + 1);
+      StringView ArchA = Name.substr(found + 1);
       pkgCache::PkgIterator PkgA = Cache.FindPkg(NameA, ArchA);
       if (PkgA.end() == false)
       {
+        // ArchA is used inside the loop which might remap (NameA is not used)
+        Dynamic<StringView> DynArchA(ArchA);
         Dynamic<pkgCache::PkgIterator> DynPkgA(PkgA);
         pkgCache::PrvIterator Prv = PkgA.ProvidesList();
         for (; Prv.end() == false; ++Prv)