return true;
if (PkgVer == 0 || PkgVer[0] == 0)
return false;
-
+ Op &= 0x0F;
+
+ size_t const lenPkgVer = strlen(PkgVer);
+ size_t const lenDepVer = strlen(DepVer);
+
+ // take a shortcut for equals which are string-equal as well
+ if (Op == pkgCache::Dep::Equals && lenPkgVer == lenDepVer &&
+ memcmp(PkgVer, DepVer, lenPkgVer) == 0)
+ return true;
+
// Perform the actual comparision.
- int Res = CmpVersion(PkgVer,DepVer);
- switch (Op & 0x0F)
+ int const Res = DoCmpVersion(PkgVer, PkgVer + lenPkgVer, DepVer, DepVer + lenDepVer);
+ switch (Op)
{
case pkgCache::Dep::LessEq:
if (Res <= 0)
- handle language tags for descriptions are unique strings to be shared
- factor version string creation out of NewDepends, so we can easily reuse
version strings e.g. for implicit multi-arch dependencies
+ * apt-pkg/deb/debversion.cc:
+ - add a string-equal shortcut for equal version comparisions
-- David Kalnischkies <kalnischkies@gmail.com> Sun, 10 Mar 2013 12:23:24 +0100