summaryrefslogtreecommitdiff
path: root/apt-pkg/tagfile.cc
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2015-12-27 21:52:01 +0100
committerDavid Kalnischkies <david@kalnischkies.de>2015-12-27 21:52:01 +0100
commitc72f5c4fb4b1d496a9bbdb421f25e986f0cba9bf (patch)
treeb17bb61d7a8e3deb9dfa9d29f280410a35ab39ee /apt-pkg/tagfile.cc
parentc3c3bd043b262dd5544594abd5e5bd4377a679d6 (diff)
deal with empty values properly in deb822 parser
Regression introduced in 8710a36a01c0cb1648926792c2ad05185535558e, but such fields are unlikely in practice as it is just as simple to not have a field at all with the same result of not having a value. Closes: 808102
Diffstat (limited to 'apt-pkg/tagfile.cc')
-rw-r--r--apt-pkg/tagfile.cc4
1 files changed, 3 insertions, 1 deletions
diff --git a/apt-pkg/tagfile.cc b/apt-pkg/tagfile.cc
index 668cfc3a4..a0b64f9ca 100644
--- a/apt-pkg/tagfile.cc
+++ b/apt-pkg/tagfile.cc
@@ -382,7 +382,9 @@ bool pkgTagSection::Scan(const char *Start,unsigned long MaxLength, bool const R
lastTagHash = AlphaHash(Stop, EndTag - Stop);
// find the beginning of the value
Stop = Colon + 1;
- for (; isspace_ascii(*Stop) != 0; ++Stop);
+ for (; isspace_ascii(*Stop) != 0; ++Stop)
+ if (*Stop == '\n' && Stop[1] != ' ')
+ break;
if (Stop >= End)
return false;
lastTagData.StartValue = Stop - Section;