From 472376be6818b5ea43250abcbecfcab53b4a729a Mon Sep 17 00:00:00 2001 From: David Kalnischkies Date: Fri, 1 Apr 2022 13:45:09 +0200 Subject: Use pkgTagSection::Key in more places in src:apt The speed critical paths were converted earlier, but the remaining could benefit a tiny bit from this as well especially as we have the facility now available and can therefore brush up the code in various places in the process as well. Also takes the time to add the hidden Exists method advertised in the headers, but previously not implemented. --- cmdline/apt-extracttemplates.cc | 9 +++++---- cmdline/apt-sortpkgs.cc | 7 ++++--- 2 files changed, 9 insertions(+), 7 deletions(-) (limited to 'cmdline') diff --git a/cmdline/apt-extracttemplates.cc b/cmdline/apt-extracttemplates.cc index 01b5dbb11..88a204110 100644 --- a/cmdline/apt-extracttemplates.cc +++ b/cmdline/apt-extracttemplates.cc @@ -28,6 +28,7 @@ #include #include #include +#include #include #include @@ -170,11 +171,11 @@ bool DebFile::ParseInfo() if (Section.Scan(Control, ControlLen) == false) return false; - Package = Section.FindS("Package"); + Package = Section.Find(pkgTagSection::Key::Package).to_string(); Version = GetInstalledVer(Package); const char *Start, *Stop; - if (Section.Find("Depends", Start, Stop) == true) + if (Section.Find(pkgTagSection::Key::Depends, Start, Stop)) { while (1) { @@ -191,8 +192,8 @@ bool DebFile::ParseInfo() if (Start == Stop) break; } } - - if (Section.Find("Pre-Depends", Start, Stop) == true) + + if (Section.Find(pkgTagSection::Key::Pre_Depends, Start, Stop)) { while (1) { diff --git a/cmdline/apt-sortpkgs.cc b/cmdline/apt-sortpkgs.cc index da451708f..519825457 100644 --- a/cmdline/apt-sortpkgs.cc +++ b/cmdline/apt-sortpkgs.cc @@ -20,6 +20,7 @@ #include #include #include +#include #include #include @@ -85,9 +86,9 @@ static bool DoIt(string InFile) /* Fetch the name, auto-detecting if this is a source file or a package file */ - Tmp.Name = Section.FindS("Package"); - Tmp.Ver = Section.FindS("Version"); - Tmp.Arch = Section.FindS("Architecture"); + Tmp.Name = Section.Find(pkgTagSection::Key::Package).to_string(); + Tmp.Ver = Section.Find(pkgTagSection::Key::Version).to_string(); + Tmp.Arch = Section.Find(pkgTagSection::Key::Architecture).to_string(); if (Tmp.Name.empty() == true) return _error->Error(_("Unknown package record!")); -- cgit v1.2.3-70-g09d2