aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-07-25 22:03:22 +0000
committerGravatar edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-07-25 22:03:22 +0000
commit1acab362fdde40948e47438edcc4326e04b9b52b (patch)
tree91075758656910023b31adff7fec70533c9279cc
parentac4bedcb1098416e46f1907b03878787df6342ce (diff)
pdfviewer: limit the characters we support in ToUnicode, to 0xffff
Review URL: https://codereview.chromium.org/20538002 git-svn-id: http://skia.googlecode.com/svn/trunk@10377 2bbb7eff-a529-9590-31e7-b0007b416f81
-rw-r--r--experimental/PdfViewer/SkPdfFont.cpp3
-rw-r--r--experimental/PdfViewer/pdf_viewer_main.cpp1
-rw-r--r--experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp1
3 files changed, 3 insertions, 2 deletions
diff --git a/experimental/PdfViewer/SkPdfFont.cpp b/experimental/PdfViewer/SkPdfFont.cpp
index e5c880d585..0a8420c84b 100644
--- a/experimental/PdfViewer/SkPdfFont.cpp
+++ b/experimental/PdfViewer/SkPdfFont.cpp
@@ -311,7 +311,8 @@ static int skstoi(const SkPdfObject* str) {
for (unsigned int i = 0 ; i < str->len(); i++) {
ret = (ret << 8) + ((unsigned char*)str->c_str())[i];
}
- return ret;
+ // TODO(edisonn): character larger than 0x0000ffff not supported right now.
+ return ret & 0x0000ffff;
}
#define tokenIsKeyword(token,keyword) (token.fType == kKeyword_TokenType && token.fKeywordLength==sizeof(keyword)-1 && strncmp(token.fKeyword, keyword, sizeof(keyword)-1) == 0)
diff --git a/experimental/PdfViewer/pdf_viewer_main.cpp b/experimental/PdfViewer/pdf_viewer_main.cpp
index d43086fedc..f3176b9940 100644
--- a/experimental/PdfViewer/pdf_viewer_main.cpp
+++ b/experimental/PdfViewer/pdf_viewer_main.cpp
@@ -246,7 +246,6 @@ static bool process_pdf(const SkString& inputPath, const SkString& outputDir,
SkDebugf("ERROR: Empty PDF Document %s\n", inputPath.c_str());
return false;
} else {
- printf("renders = %i\n", FLAGS_benchRender);
for (int i = 0; i < FLAGS_benchRender + 1; i++) {
// TODO(edisonn) if (i == 1) start timer
if (strcmp(FLAGS_pages[0], "all") == 0) {
diff --git a/experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp b/experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp
index 7d8bcb695a..bc3a3faa79 100644
--- a/experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp
+++ b/experimental/PdfViewer/pdfparser/native/SkPdfNativeTokenizer.cpp
@@ -385,6 +385,7 @@ static const unsigned char* readHexString(int level, const unsigned char* start,
if (*in == kClosedInequityBracket_PdfDelimiter) {
if (hasOut) { *out = code; }
out++;
+ in++;
break;
}