summaryrefslogtreecommitdiff
path: root/cmdline
diff options
context:
space:
mode:
authorArch Librarian <arch@canonical.com>2004-09-20 17:02:41 +0000
committerArch Librarian <arch@canonical.com>2004-09-20 17:02:41 +0000
commit418af5d2e7095f597d4d52e33d9504c82f865b41 (patch)
tree45d7252187979742a22d8f0c1c7b7751c42ced8f /cmdline
parenta2a43337c966feb5094e2d1b9c5f1770577d4fde (diff)
* 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)
Diffstat (limited to 'cmdline')
-rw-r--r--cmdline/apt-get.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/cmdline/apt-get.cc b/cmdline/apt-get.cc
index 0ab1dc1d2..0d32b9b39 100644
--- a/cmdline/apt-get.cc
+++ b/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;