]> git.saurik.com Git - apt.git/blobdiff - apt-pkg/pkgcache.h
tests: don't do boundless string compares with data()
[apt.git] / apt-pkg / pkgcache.h
index 9fea44e06192f91066d892759bc1e826aefaa8bc..91228f7133ac4196571e97ee690c568b57b92dd1 100644 (file)
@@ -245,6 +245,16 @@ class pkgCache                                                             /*{{{*/
    APT_HIDDEN PkgIterator FindPkg(APT::StringView Name, APT::StringView Arch);
 #endif
 
    APT_HIDDEN PkgIterator FindPkg(APT::StringView Name, APT::StringView Arch);
 #endif
 
+#ifdef APT_PKG_EXPOSE_STRING_VIEW
+   APT::StringView ViewString(map_stringitem_t idx) const
+   {
+      char *name = StrP + idx;
+      uint16_t len = *reinterpret_cast<const uint16_t*>(name - sizeof(uint16_t));
+      return APT::StringView(name, len);
+   }
+#endif
+
+
    GrpIterator FindGrp(const std::string &Name);
    PkgIterator FindPkg(const std::string &Name);
    PkgIterator FindPkg(const std::string &Name, const std::string &Arch);
    GrpIterator FindGrp(const std::string &Name);
    PkgIterator FindPkg(const std::string &Name);
    PkgIterator FindPkg(const std::string &Name, const std::string &Arch);