ソースを参照

* Avoid segfault if a package name is specified which c...
Author: mdz
Date: 2003-08-07 20:51:50 GMT
* Avoid segfault if a package name is specified which consists
entirely of characters which look like end tags ('+', '-')
(Closes: #200425)

Arch Librarian 22 年 前
コミット
418af5d2e7
共有2 個のファイルを変更した6 個の追加3 個の削除を含む
  1. 3 3
      cmdline/apt-get.cc
  2. 3 0
      debian/changelog

+ 3 - 3
cmdline/apt-get.cc

@@ -1,6 +1,6 @@
 // -*- mode: cpp; mode: fold -*-
 // Description								/*{{{*/
-// $Id: apt-get.cc,v 1.133 2003/07/25 22:03:49 mdz Exp $
+// $Id: apt-get.cc,v 1.134 2003/08/07 20:51:50 mdz Exp $
 /* ######################################################################
    
    apt-get - Cover for dpkg
@@ -1350,14 +1350,14 @@ bool DoInstall(CommandLine &CmdL)
       while (Cache->FindPkg(S).end() == true)
       {
 	 // Handle an optional end tag indicating what to do
-	 if (S[Length - 1] == '-')
+	 if (Length >= 1 && S[Length - 1] == '-')
 	 {
 	    Remove = true;
 	    S[--Length] = 0;
 	    continue;
 	 }
 	 
-	 if (S[Length - 1] == '+')
+	 if (Length >= 1 && S[Length - 1] == '+')
 	 {
 	    Remove = false;
 	    S[--Length] = 0;

+ 3 - 0
debian/changelog

@@ -12,6 +12,9 @@ apt (0.5.9) unstable; urgency=low
     written by a single write(2)
   * Add new French man pages to doc/fr/.cvsignore
   * Add freebsd to buildlib/ostable (Closes: #193430)
+  * Avoid segfault if a package name is specified which consists
+    entirely of characters which look like end tags ('+', '-')
+    (Closes: #200425)
 
  --