Commit ffe462e67eca12a728bf11a2a6f2034e82c2d496

Authored by m-holger
1 parent 959ae4b4

In ContentNormalizer::handleToken refactor handling of string and name tokens

libqpdf/ContentNormalizer.cc
1 #include <qpdf/ContentNormalizer.hh> 1 #include <qpdf/ContentNormalizer.hh>
2 2
  3 +#include <qpdf/QPDF_Name.hh>
3 #include <qpdf/QUtil.hh> 4 #include <qpdf/QUtil.hh>
4 5
5 ContentNormalizer::ContentNormalizer() : 6 ContentNormalizer::ContentNormalizer() :
@@ -43,11 +44,11 @@ ContentNormalizer::handleToken(QPDFTokenizer::Token const&amp; token) @@ -43,11 +44,11 @@ ContentNormalizer::handleToken(QPDFTokenizer::Token const&amp; token)
43 case QPDFTokenizer::tt_string: 44 case QPDFTokenizer::tt_string:
44 // Replacing string and name tokens in this way normalizes their representation as this will 45 // Replacing string and name tokens in this way normalizes their representation as this will
45 // automatically handle quoting of unprintable characters, etc. 46 // automatically handle quoting of unprintable characters, etc.
46 - writeToken(QPDFTokenizer::Token(QPDFTokenizer::tt_string, token.getValue())); 47 + write(QPDFObjectHandle::newString(token.getValue()).unparse());
47 break; 48 break;
48 49
49 case QPDFTokenizer::tt_name: 50 case QPDFTokenizer::tt_name:
50 - writeToken(QPDFTokenizer::Token(QPDFTokenizer::tt_name, token.getValue())); 51 + write(QPDF_Name::normalizeName(token.getValue()));
51 break; 52 break;
52 53
53 default: 54 default:
libqpdf/QPDFOutlineDocumentHelper.cc
@@ -71,7 +71,7 @@ QPDFOutlineDocumentHelper::resolveNamedDest(QPDFObjectHandle name) @@ -71,7 +71,7 @@ QPDFOutlineDocumentHelper::resolveNamedDest(QPDFObjectHandle name)
71 m->dest_dict = qpdf.getRoot().getKey("/Dests"); 71 m->dest_dict = qpdf.getRoot().getKey("/Dests");
72 } 72 }
73 QTC::TC("qpdf", "QPDFOutlineDocumentHelper name named dest"); 73 QTC::TC("qpdf", "QPDFOutlineDocumentHelper name named dest");
74 - result= m->dest_dict.getKeyIfDict(name.getName()); 74 + result = m->dest_dict.getKeyIfDict(name.getName());
75 } else if (name.isString()) { 75 } else if (name.isString()) {
76 if (!m->names_dest) { 76 if (!m->names_dest) {
77 auto dests = qpdf.getRoot().getKey("/Names").getKeyIfDict("/Dests"); 77 auto dests = qpdf.getRoot().getKey("/Names").getKeyIfDict("/Dests");