From ddff663f897a422d61a36238ec71edb7fe3e3eb1 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Fri, 12 Mar 2010 15:39:06 +0100 Subject: * cmdline/apt-get.cc: - if apt-get source foo=version or foo/distro can not be found, error out (LP: #502641) --- cmdline/apt-get.cc | 12 ++++--- debian/changelog | 3 ++ doc/po/fr.po | 93 ++++++++++++++++++++++++++++-------------------------- 3 files changed, 58 insertions(+), 50 deletions(-) diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc index 34ae2fed9..d4fefa9c7 100644 --- a/cmdline/apt-get.cc +++ b/cmdline/apt-get.cc @@ -1317,9 +1317,11 @@ pkgSrcRecords::Parser *FindSrc(const char *Name,pkgRecords &Recs, if (Src.empty() == true) { // Sources files have no codename information - if (VerTag.empty() == true && DefRel.empty() == false) - _error->Warning(_("Ignore unavailable target release '%s' of package '%s'"), DefRel.c_str(), TmpSrc.c_str()); - DefRel.clear(); + if (VerTag.empty() == true && DefRel.empty() == false) + { + _error->Error(_("Ignore unavailable target release '%s' of package '%s'"), DefRel.c_str(), TmpSrc.c_str()); + return 0; + } } } if (Src.empty() == true) @@ -1386,8 +1388,8 @@ pkgSrcRecords::Parser *FindSrc(const char *Name,pkgRecords &Recs, if (Last != 0 || VerTag.empty() == true) break; //if (VerTag.empty() == false && Last == 0) - _error->Warning(_("Ignore unavailable version '%s' of package '%s'"), VerTag.c_str(), TmpSrc.c_str()); - VerTag.clear(); + _error->Error(_("Ignore unavailable version '%s' of package '%s'"), VerTag.c_str(), TmpSrc.c_str()); + return 0; } if (Last == 0 || Last->Jump(Offset) == false) diff --git a/debian/changelog b/debian/changelog index ffbc9f459..9665cd2d1 100644 --- a/debian/changelog +++ b/debian/changelog @@ -22,6 +22,9 @@ apt (0.7.25.4) UNRELEASED; urgency=low * cmdline/apt-mark: - show error on incorrect aguments (LP: #517917), thanks to Torsten Spindler + * cmdline/apt-get.cc: + - if apt-get source foo=version or foo/distro can not be found, + error out (LP: #502641) [ Robert Collins ] * Change the package index Info methods to allow apt-cache policy to be diff --git a/doc/po/fr.po b/doc/po/fr.po index a6d12364e..ed881fa32 100644 --- a/doc/po/fr.po +++ b/doc/po/fr.po @@ -1059,12 +1059,6 @@ msgstr "" #. type: Plain text #: apt.ent:362 #, no-wrap -#| msgid "" -#| "/etc/apt/sources.list\n" -#| " Locations to fetch packages from.\n" -#| " Configuration Item: Dir::Etc::SourceList.\n" -#| " \n" msgid "" "/etc/apt/trusted.gpg\n" @@ -1142,7 +1136,7 @@ msgstr "" " traduction est légèrement en retard sur le contenu d'origine.\n" "\">\n" -#. The last update date +#. The last update date #. type: Content of: #: apt-cache.8.xml:13 apt-config.8.xml:13 apt-extracttemplates.1.xml:13 #: apt-sortpkgs.1.xml:13 sources.list.5.xml:13 @@ -2518,7 +2512,7 @@ msgstr "" "apt-extracttemplates retourne zéro si tout se passe bien, " "le nombre 100 en cas d'erreur." -#. The last update date +#. The last update date #. type: Content of: #: apt-ftparchive.1.xml:13 msgid "" @@ -2642,7 +2636,8 @@ msgstr "" #. type: Content of: #: apt-ftparchive.1.xml:82 apt-ftparchive.1.xml:106 -msgid "The option can be used to specify a binary caching DB." +msgid "" +"The option can be used to specify a binary caching DB." msgstr "" "On peut se servir de l'option pour demander un cache " "binaire." @@ -2797,8 +2792,10 @@ msgstr "" #. type: Content of: #: apt-ftparchive.1.xml:155 -msgid "The generate configuration has 4 separate sections, each described below." -msgstr "Ce fichier de configuration possède quatre sections, décrites ci-dessous." +msgid "" +"The generate configuration has 4 separate sections, each described below." +msgstr "" +"Ce fichier de configuration possède quatre sections, décrites ci-dessous." #. type: Content of: #: apt-ftparchive.1.xml:157 @@ -3095,9 +3092,6 @@ msgstr "Sources" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><listitem><para> #: apt-ftparchive.1.xml:288 -#| msgid "" -#| "Sets the output Packages file. Defaults to <filename>$(DIST)/$(SECTION)/" -#| "source/Sources</filename>" msgid "" "Sets the output Sources file. Defaults to <filename>$(DIST)/$(SECTION)/" "source/Sources</filename>" @@ -3243,10 +3237,6 @@ msgstr "" #. type: Content of: <refentry><refsect1><refsect2><para><programlisting> #: apt-ftparchive.1.xml:354 #, no-wrap -#| msgid "" -#| "for i in Sections do \n" -#| " for j in Architectures do\n" -#| " Generate for DIST=scope SECTION=i ARCH=j\n" msgid "" "for i in Sections do \n" " for j in Architectures do\n" @@ -3260,17 +3250,14 @@ msgstr "" #. type: Content of: <refentry><refsect1><refsect2><para> #: apt-ftparchive.1.xml:351 -#| msgid "" -#| "When processing a <literal>Tree</literal> section <command>apt-" -#| "ftparchive</command> performs an operation similar to:" msgid "" "When processing a <literal>Tree</literal> section <command>apt-ftparchive</" "command> performs an operation similar to: <placeholder type=\"programlisting" "\" id=\"0\"/>" msgstr "" "Quand il exécute la section <literal>Tree</literal>, <command>apt-" -"ftparchive</command> effectue une opération analogue à : <placeholder type=\"programlisting" -"\" id=\"0\"/>" +"ftparchive</command> effectue une opération analogue à : <placeholder type=" +"\"programlisting\" id=\"0\"/>" #. type: Content of: <refentry><refsect1><refsect2><variablelist><varlistentry><term> #: apt-ftparchive.1.xml:360 @@ -3696,7 +3683,7 @@ msgstr "" "<command>apt-ftparchive</command> retourne zéro si tout se passe bien, le " "nombre 100 en cas d'erreur." -#. The last update date +#. The last update date #. type: Content of: <refentry><refentryinfo> #: apt-get.8.xml:13 msgid "" @@ -3714,7 +3701,8 @@ msgstr "apt-get" #. type: Content of: <refentry><refnamediv><refpurpose> #: apt-get.8.xml:30 msgid "APT package handling utility -- command-line interface" -msgstr "Utilitaire APT pour la gestion des paquets -- interface en ligne de commande." +msgstr "" +"Utilitaire APT pour la gestion des paquets -- interface en ligne de commande." #. type: Content of: <refentry><refsynopsisdiv><cmdsynopsis> #: apt-get.8.xml:36 @@ -5072,8 +5060,10 @@ msgstr "Trousseau des clés fiables de l'archive Debian." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> #: apt-key.8.xml:166 -msgid "<filename>/usr/share/keyrings/debian-archive-removed-keys.gpg</filename>" -msgstr "<filename>/usr/share/keyrings/debian-archive-removed-keys.gpg</filename>" +msgid "" +"<filename>/usr/share/keyrings/debian-archive-removed-keys.gpg</filename>" +msgstr "" +"<filename>/usr/share/keyrings/debian-archive-removed-keys.gpg</filename>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt-key.8.xml:167 @@ -5085,7 +5075,7 @@ msgstr "Trousseau des clés fiables supprimées de l'archive Debian." msgid "&apt-get;, &apt-secure;" msgstr "&apt-get;, &apt-secure;" -#. The last update date +#. The last update date #. type: Content of: <refentry><refentryinfo> #: apt-mark.8.xml:13 msgid "" @@ -5195,8 +5185,10 @@ msgstr "" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> #: apt-mark.8.xml:93 -msgid "<option>-f=<filename><replaceable>FILENAME</replaceable></filename></option>" -msgstr "<option>-f=<filename><replaceable>FICHIER</replaceable></filename></option>" +msgid "" +"<option>-f=<filename><replaceable>FILENAME</replaceable></filename></option>" +msgstr "" +"<option>-f=<filename><replaceable>FICHIER</replaceable></filename></option>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> #: apt-mark.8.xml:94 @@ -5656,7 +5648,7 @@ msgstr "" "<command>apt-sortpkgs</command> retourne zéro si tout se passe bien ou 100 " "en cas d'erreur." -#. The last update date +#. The last update date #. type: Content of: <refentry><refentryinfo> #: apt.conf.5.xml:13 #, fuzzy @@ -5729,7 +5721,8 @@ msgstr "" #| msgid "" #| "APT configuration file. Configuration Item: <literal>Dir::Etc::Main</" #| "literal>." -msgid "the main configuration file specified by <literal>Dir::Etc::main</literal>" +msgid "" +"the main configuration file specified by <literal>Dir::Etc::main</literal>" msgstr "" "Fichier de configuration d'APT. Élément de configuration : <literal>Dir::" "Etc::Main</literal>." @@ -7478,7 +7471,7 @@ msgstr "" #. TODO: provide a #. motivating example, except I haven't a clue why you'd want -#. to do this. +#. to do this. #. type: Content of: <refentry><refsect1><para><itemizedlist><listitem><para> #: apt.conf.5.xml:692 msgid "" @@ -7500,7 +7493,8 @@ msgstr "<literal>Debug::Acquire::cdrom</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.conf.5.xml:711 -msgid "Print information related to accessing <literal>cdrom://</literal> sources." +msgid "" +"Print information related to accessing <literal>cdrom://</literal> sources." msgstr "" "Affiche les informations concernant les sources de type <literal>cdrom://</" "literal>" @@ -7513,7 +7507,8 @@ msgstr "<literal>Debug::Acquire::ftp</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.conf.5.xml:722 msgid "Print information related to downloading packages using FTP." -msgstr "Affiche les informations concernant le téléchargement de paquets par FTP." +msgstr "" +"Affiche les informations concernant le téléchargement de paquets par FTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> #: apt.conf.5.xml:729 @@ -7523,7 +7518,8 @@ msgstr "<literal>Debug::Acquire::http</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.conf.5.xml:733 msgid "Print information related to downloading packages using HTTP." -msgstr "Affiche les informations concernant le téléchargement de paquets par HTTP." +msgstr "" +"Affiche les informations concernant le téléchargement de paquets par HTTP." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> #: apt.conf.5.xml:740 @@ -7684,7 +7680,8 @@ msgstr "<literal>Debug::pkgAcquire::Worker</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.conf.5.xml:862 -msgid "Log all interactions with the sub-processes that actually perform downloads." +msgid "" +"Log all interactions with the sub-processes that actually perform downloads." msgstr "" "Affiche toutes les interactions avec les processus enfants qui se chargent " "effectivement des téléchargements." @@ -7825,7 +7822,8 @@ msgstr "<literal>Debug::pkgPackageManager</literal>" #. type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: apt.conf.5.xml:963 -msgid "Output status messages tracing the steps performed when invoking &dpkg;." +msgid "" +"Output status messages tracing the steps performed when invoking &dpkg;." msgstr "Affiche le détail des opérations liées à l'invocation de &dpkg;." #. type: Content of: <refentry><refsect1><variablelist><varlistentry><term> @@ -7896,13 +7894,13 @@ msgstr "" msgid "&file-aptconf;" msgstr "&file-aptconf;" -#. ? reading apt.conf +#. ? reading apt.conf #. type: Content of: <refentry><refsect1><para> #: apt.conf.5.xml:1042 msgid "&apt-cache;, &apt-config;, &apt-preferences;." msgstr "&apt-cache;, &apt-config;, &apt-preferences;." -#. The last update date +#. The last update date #. type: Content of: <refentry><refentryinfo> #: apt_preferences.5.xml:13 msgid "&apt-author.team; &apt-email; &apt-product; <date>04 May 2009</date>" @@ -8052,7 +8050,8 @@ msgstr "une priorité égale à 990" #. type: Content of: <refentry><refsect1><refsect2><para><variablelist><varlistentry><listitem><simpara> #: apt_preferences.5.xml:101 -msgid "to the versions that are not installed and belong to the target release." +msgid "" +"to the versions that are not installed and belong to the target release." msgstr "" "est affectée aux versions qui ne sont pas installées et qui appartiennent à " "la distribution par défaut." @@ -8537,7 +8536,8 @@ msgstr "" #. type: Content of: <refentry><refsect1><refsect2><title> #: apt_preferences.5.xml:313 msgid "Determination of Package Version and Distribution Properties" -msgstr "Détermination de la version des paquets et des propriétés des distributions" +msgstr "" +"Détermination de la version des paquets et des propriétés des distributions" #. type: Content of: <refentry><refsect1><refsect2><para> #: apt_preferences.5.xml:315 @@ -9630,7 +9630,8 @@ msgstr "$Id: guide.sgml,v 1.7 2003/04/26 23:26:13 doogie Exp $" #. type: <abstract></abstract> #: guide.sgml:11 -msgid "This document provides an overview of how to use the the APT package manager." +msgid "" +"This document provides an overview of how to use the the APT package manager." msgstr "" "Ce document fournit un aperçu des méthode d'utilisation du gestionnaire de " "paquets APT." @@ -10561,8 +10562,10 @@ msgstr "Résumé final" #. type: <p></p> #: guide.sgml:447 -msgid "Finally, APT will print out a summary of all the changes that will occur." -msgstr "Anfin, APT affichera un résumé de toutes les opérations qui prendront place." +msgid "" +"Finally, APT will print out a summary of all the changes that will occur." +msgstr "" +"Anfin, APT affichera un résumé de toutes les opérations qui prendront place." #. type: <example></example> #: guide.sgml:452 -- cgit v1.2.3 From 0d6c5e7dcb2d4fe5334a4177aff3a2b6e55e6768 Mon Sep 17 00:00:00 2001 From: Michael Vogt <michael.vogt@ubuntu.com> Date: Fri, 12 Mar 2010 22:06:08 +0100 Subject: * apt-pkg/indexfile.cc: - deal correctly with three letter langcodes (LP: #391409) --- apt-pkg/indexfile.cc | 18 +++++++++++++----- debian/changelog | 2 ++ 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/apt-pkg/indexfile.cc b/apt-pkg/indexfile.cc index 08f71feb0..34fd71b20 100644 --- a/apt-pkg/indexfile.cc +++ b/apt-pkg/indexfile.cc @@ -89,8 +89,11 @@ bool pkgIndexFile::TranslationsAvailable() bool pkgIndexFile::CheckLanguageCode(const char *Lang) { - if (strlen(Lang) == 2 || (strlen(Lang) == 5 && Lang[2] == '_')) - return true; + if (strlen(Lang) == 2 || + strlen(Lang) == 3 || + (strlen(Lang) > 3 && Lang[3] == '_') || + (strlen(Lang) == 5 && Lang[2] == '_')) + return true; if (strcmp(Lang,"C") != 0) _error->Warning("Wrong language code %s", Lang); @@ -112,13 +115,18 @@ string pkgIndexFile::LanguageCode() // we have a mapping of the language codes that contains all the language // codes that need the country code as well // (like pt_BR, pt_PT, sv_SE, zh_*, en_*) - const char *need_full_langcode[] = { "pt","sv","zh","en", NULL }; + const char *need_full_langcode[] = { "cs_", + "en_", + "pt_", + "sv_", + "zh_", + NULL }; for(const char **s = need_full_langcode;*s != NULL; s++) if(lang.find(*s) == 0) return lang.substr(0,5); - if(lang.size() > 2) - return lang.substr(0,2); + if(lang.find("_") != lang.npos) + return lang.substr(0, lang.find("_")); else return lang; } diff --git a/debian/changelog b/debian/changelog index 9665cd2d1..6a078c498 100644 --- a/debian/changelog +++ b/debian/changelog @@ -25,6 +25,8 @@ apt (0.7.25.4) UNRELEASED; urgency=low * cmdline/apt-get.cc: - if apt-get source foo=version or foo/distro can not be found, error out (LP: #502641) + * apt-pkg/indexfile.cc: + - deal correctly with three letter langcodes (LP: #391409) [ Robert Collins ] * Change the package index Info methods to allow apt-cache policy to be -- cgit v1.2.3