diff options
author | Michael Vogt <egon@bottom> | 2007-06-06 22:42:22 +0200 |
---|---|---|
committer | Michael Vogt <egon@bottom> | 2007-06-06 22:42:22 +0200 |
commit | 90485a0039fcf308b0d7fc056d39ee4b91b76c58 (patch) | |
tree | 76390aa848c02583f0fa425fde39c5a8ff0f8d7a | |
parent | b4dd017206dc92782462dde702076c389567fb57 (diff) | |
parent | c2f2b86252cec3a9ec68df2f55850067faa705d6 (diff) |
* implement SourceVer() in pkgRecords
(thanks to Daniel Burrows for the patch!)
* merged from Christian Perrier:
* mr.po: New Marathi translation Closes: #416806
* zh_CN.po: Updated by Eric Pareja Closes: #416822
* tl.po: Updated by Eric Pareja Closes: #416638
* gl.po: Updated by Jacobo Tarrio
Closes: #412828
* da.po: Updated by Claus Hindsgaul
Closes: #409483
* fr.po: Remove a non-breakable space for usability
issues. Closes: #408877
* ru.po: Updated Russian translation. Closes: #405476
* *.po: Unfuzzy after upstream typo corrections
* NMU
* Fix broken use of awk in apt-key that caused removal of the wrong keys
from the keyring. Closes: #412572
-rw-r--r-- | apt-pkg/deb/debrecords.cc | 28 | ||||
-rw-r--r-- | apt-pkg/deb/debrecords.h | 1 | ||||
-rw-r--r-- | apt-pkg/pkgrecords.h | 1 | ||||
-rwxr-xr-x | cmdline/apt-key | 4 | ||||
-rw-r--r-- | debian/changelog | 22 |
5 files changed, 53 insertions, 3 deletions
diff --git a/apt-pkg/deb/debrecords.cc b/apt-pkg/deb/debrecords.cc index c3e579ad1..26ca36799 100644 --- a/apt-pkg/deb/debrecords.cc +++ b/apt-pkg/deb/debrecords.cc @@ -92,18 +92,44 @@ string debRecordParser::LongDesc() return Section.FindS("Description"); } /*}}}*/ + +static const char *SourceVerSeparators = " ()"; + // RecordParser::SourcePkg - Return the source package name if any /*{{{*/ // --------------------------------------------------------------------- /* */ string debRecordParser::SourcePkg() { string Res = Section.FindS("Source"); - string::size_type Pos = Res.find(' '); + string::size_type Pos = Res.find_first_of(SourceVerSeparators); if (Pos == string::npos) return Res; return string(Res,0,Pos); } /*}}}*/ +// RecordParser::SourceVer - Return the source version number if present /*{{{*/ +// --------------------------------------------------------------------- +/* */ +string debRecordParser::SourceVer() +{ + string Pkg = Section.FindS("Source"); + string::size_type Pos = Pkg.find_first_of(SourceVerSeparators); + if (Pos == string::npos) + return ""; + + string::size_type VerStart = Pkg.find_first_not_of(SourceVerSeparators, Pos); + if(VerStart == string::npos) + return ""; + + string::size_type VerEnd = Pkg.find_first_of(SourceVerSeparators, VerStart); + if(VerEnd == string::npos) + // Corresponds to the case of, e.g., "foo (1.2" without a closing + // paren. Be liberal and guess what it means. + return string(Pkg, VerStart); + else + return string(Pkg, VerStart, VerEnd - VerStart); +} + /*}}}*/ // RecordParser::GetRec - Return the whole record /*{{{*/ // --------------------------------------------------------------------- /* */ diff --git a/apt-pkg/deb/debrecords.h b/apt-pkg/deb/debrecords.h index efef2e588..bb72275a5 100644 --- a/apt-pkg/deb/debrecords.h +++ b/apt-pkg/deb/debrecords.h @@ -38,6 +38,7 @@ class debRecordParser : public pkgRecords::Parser virtual string MD5Hash(); virtual string SHA1Hash(); virtual string SourcePkg(); + virtual string SourceVer(); // These are some general stats about the package virtual string Maintainer(); diff --git a/apt-pkg/pkgrecords.h b/apt-pkg/pkgrecords.h index 08f004414..dcfec07ef 100644 --- a/apt-pkg/pkgrecords.h +++ b/apt-pkg/pkgrecords.h @@ -58,6 +58,7 @@ class pkgRecords::Parser virtual string MD5Hash() {return string();}; virtual string SHA1Hash() {return string();}; virtual string SourcePkg() {return string();}; + virtual string SourceVer() {return string();}; // These are some general stats about the package virtual string Maintainer() {return string();}; diff --git a/cmdline/apt-key b/cmdline/apt-key index 7460a24be..90ecae2cf 100755 --- a/cmdline/apt-key +++ b/cmdline/apt-key @@ -24,9 +24,9 @@ update() { $GPG_CMD --quiet --batch --keyring $ARCHIVE_KEYRING --export | $GPG --ignore-time-conflict --import # remove no-longer used keys - keys=`$GPG_CMD --keyring $REMOVED_KEYS --with-colons --list-keys|awk '/^pub/{FS=":";print $5}'` + keys=`$GPG_CMD --keyring $REMOVED_KEYS --with-colons --list-keys | grep ^pub | cut -d: -f5` for key in $keys; do - if $GPG --list-keys --with-colons | awk '/^pub/{FS=":";print $5}'|grep -q $key; then + if $GPG --list-keys --with-colons | grep ^pub | cut -d: -f5 | grep -q $key; then $GPG --quiet --batch --delete-key --yes ${key} fi done diff --git a/debian/changelog b/debian/changelog index 9acf948b0..cc6508b60 100644 --- a/debian/changelog +++ b/debian/changelog @@ -2,6 +2,8 @@ apt (0.6.47) unstable; urgency=low * ABI library name change because its build against new glibc + * implement SourceVer() in pkgRecords + (thanks to Daniel Burrows for the patch!) * apt-pkg/algorithm.cc: - use clog for all debugging - only increase the score of installed applications if they @@ -23,6 +25,18 @@ apt (0.6.47) unstable; urgency=low * apt-pkg/acquire.{cc,h}: - deal better with duplicated sources.list entries (avoid double queuing of URLs) - this fixes hangs in bzip/gzip + * merged from Christian Perrier: + * mr.po: New Marathi translation Closes: #416806 + * zh_CN.po: Updated by Eric Pareja Closes: #416822 + * tl.po: Updated by Eric Pareja Closes: #416638 + * gl.po: Updated by Jacobo Tarrio + Closes: #412828 + * da.po: Updated by Claus Hindsgaul + Closes: #409483 + * fr.po: Remove a non-breakable space for usability + issues. Closes: #408877 + * ru.po: Updated Russian translation. Closes: #405476 + * *.po: Unfuzzy after upstream typo corrections * apt-pkg/policy.cc: - allow multiple packages (thanks to David Foerster) * merged from Christian Perrier: @@ -40,6 +54,14 @@ apt (0.6.47) unstable; urgency=low -- Michael Vogt <michael.vogt@ubuntu.com> Mon, 18 Dec 2006 19:39:05 +0100 +apt (0.6.46.4-0.1) unstable; urgency=emergency + + * NMU + * Fix broken use of awk in apt-key that caused removal of the wrong keys + from the keyring. Closes: #412572 + + -- Joey Hess <joeyh@debian.org> Mon, 26 Feb 2007 16:00:22 -0500 + apt (0.6.46.4) unstable; urgency=high * ack NMU (closes: #401017) |