From ae18bfd142f2f9a19505971d4d197cb37ee86eee Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Sat, 5 Jan 2019 12:54:41 -0500 Subject: Refactor string transcoding in QPDF_String --- libqpdf/QPDF_String.cc | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'libqpdf/QPDF_String.cc') diff --git a/libqpdf/QPDF_String.cc b/libqpdf/QPDF_String.cc index 809823a6..633f1699 100644 --- a/libqpdf/QPDF_String.cc +++ b/libqpdf/QPDF_String.cc @@ -64,8 +64,11 @@ QPDF_String::~QPDF_String() { } -QPDF_String* -QPDF_String::new_utf16(std::string const& utf8_val) +enum encoding_e { e_utf16 }; + +static +std::string +transcode_utf8(std::string const& utf8_val, encoding_e encoding) { std::string result = "\xfe\xff"; size_t len = utf8_val.length(); @@ -113,7 +116,13 @@ QPDF_String::new_utf16(std::string const& utf8_val) } } } - return new QPDF_String(result); + return result; +} + +QPDF_String* +QPDF_String::new_utf16(std::string const& utf8_val) +{ + return new QPDF_String(transcode_utf8(utf8_val, e_utf16)); } std::string -- cgit v1.2.3-54-g00ecf