Преглед на файлове

* apt-pkg/policy.cc:
- allow multiple packages (thanks to David Foerster)

Michael Vogt преди 19 години
родител
ревизия
1c62ab240a
променени са 3 файла, в които са добавени 14 реда и са изтрити 4 реда
  1. 8 1
      apt-pkg/policy.cc
  2. 2 0
      debian/changelog
  3. 4 3
      doc/apt_preferences.5.xml

+ 8 - 1
apt-pkg/policy.cc

@@ -36,6 +36,7 @@
 #include <apti18n.h>
 
 #include <iostream>
+#include <sstream>
 									/*}}}*/
 
 using namespace std;
@@ -300,7 +301,13 @@ bool ReadPinFile(pkgPolicy &Plcy,string File)
          continue;
       }
 
-      Plcy.CreatePin(Type,Name,string(Word,End),priority);
+      istringstream s(Name);
+      string pkg;
+      while(!s.eof())
+      {
+	 s >> pkg;
+         Plcy.CreatePin(Type, pkg, string(Word,End),priority);
+      };
    }
 
    Plcy.InitDefaults();

+ 2 - 0
debian/changelog

@@ -21,6 +21,8 @@ apt (0.6.47) UNRELEASED; urgency=low
   * [ABI] apt-pkg/acquire.{cc,h}:
     - deal better with duplicated sources.list entries (avoid
       double queuing of  URLs) - this fixes hangs in bzip/gzip
+  * apt-pkg/policy.cc:
+    - allow multiple packages (thanks to David Foerster)
 
  -- Michael Vogt <michael.vogt@ubuntu.com>  Mon, 18 Dec 2006 19:39:05 +0100
 

+ 4 - 3
doc/apt_preferences.5.xml

@@ -143,10 +143,11 @@ separated by blank lines.  Records can have one of two forms, a specific form
 and a general form.
 <itemizedlist>
 <listitem>
-<simpara>The specific form assigns a priority (a "Pin-Priority") to a
-specified package and specified version or version range.  For example,
+<simpara>The specific form assigns a priority (a "Pin-Priority") to one or more
+specified packages and specified version or version range.  For example,
 the following record assigns a high priority to all versions of
-the <filename>perl</filename> package whose version number begins with "<literal>5.8</literal>".</simpara>
+the <filename>perl</filename> package whose version number begins with "<literal>5.8</literal>".
+Multiple packages can be separated by spaces.</simpara>
 
 <programlisting>
 Package: perl