aboutsummaryrefslogtreecommitdiffstats
path: root/libqpdf/Pl_ASCII85Decoder.cc
diff options
context:
space:
mode:
authorJay Berkenbilt <ejb@ql.org>2023-09-03 19:56:02 +0200
committerJay Berkenbilt <ejb@ql.org>2023-09-03 19:56:34 +0200
commit806922f643b05b50e423a7f16fc800dfd52ca8ef (patch)
tree16b6647d5202683ef00e92d6fded84b02fb88381 /libqpdf/Pl_ASCII85Decoder.cc
parent27980894bd91524b11ea2d43e927cfc99304e4de (diff)
downloadqpdf-806922f643b05b50e423a7f16fc800dfd52ca8ef.tar.zst
ascii85: ignore whitespace between ~ and > (fixes #973)
Diffstat (limited to 'libqpdf/Pl_ASCII85Decoder.cc')
-rw-r--r--libqpdf/Pl_ASCII85Decoder.cc21
1 files changed, 11 insertions, 10 deletions
diff --git a/libqpdf/Pl_ASCII85Decoder.cc b/libqpdf/Pl_ASCII85Decoder.cc
index fd36722a..aef8718d 100644
--- a/libqpdf/Pl_ASCII85Decoder.cc
+++ b/libqpdf/Pl_ASCII85Decoder.cc
@@ -19,6 +19,17 @@ Pl_ASCII85Decoder::write(unsigned char const* buf, size_t len)
return;
}
for (size_t i = 0; i < len; ++i) {
+ switch (buf[i]) {
+ case ' ':
+ case '\f':
+ case '\v':
+ case '\t':
+ case '\r':
+ case '\n':
+ QTC::TC("libtests", "Pl_ASCII85Decoder ignore space");
+ // ignore whitespace
+ continue;
+ }
if (eod > 1) {
break;
} else if (eod == 1) {
@@ -30,16 +41,6 @@ Pl_ASCII85Decoder::write(unsigned char const* buf, size_t len)
}
} else {
switch (buf[i]) {
- case ' ':
- case '\f':
- case '\v':
- case '\t':
- case '\r':
- case '\n':
- QTC::TC("libtests", "Pl_ASCII85Decoder ignore space");
- // ignore whitespace
- break;
-
case '~':
eod = 1;
break;