From c0376febfc855870a0e109d39ee62e82f0ab2139 Mon Sep 17 00:00:00 2001 From: "vandebo@chromium.org" Date: Mon, 5 Mar 2012 18:44:33 +0000 Subject: [PDF] Fix name objects containing characters > 0x80 and add a test. This fixes chrome bug http://crbug.com/115258 Review URL: https://codereview.appspot.com/5726048 git-svn-id: http://skia.googlecode.com/svn/trunk@3319 2bbb7eff-a529-9590-31e7-b0007b416f81 --- src/pdf/SkPDFTypes.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/pdf') diff --git a/src/pdf/SkPDFTypes.cpp b/src/pdf/SkPDFTypes.cpp index f97f21bdfd..5a0ede8253 100644 --- a/src/pdf/SkPDFTypes.cpp +++ b/src/pdf/SkPDFTypes.cpp @@ -297,7 +297,8 @@ SkString SkPDFName::FormatName(const SkString& input) { for (size_t i = 0; i < input.size(); i++) { if (input[i] & 0x80 || input[i] < '!' || input[i] == '#') { result.append("#"); - result.appendHex(input[i], 2); + // Mask with 0xFF to avoid sign extension. i.e. #FFFFFF81 + result.appendHex(input[i] & 0xFF, 2); } else { result.append(input.c_str() + i, 1); } -- cgit v1.2.3