pdfviewer: remove text save/restore (not needed) and verify that colorspace dictionary exists before using it
Review URL: https://codereview.chromium.org/22436003
git-svn-id: http://skia.googlecode.com/svn/trunk@10639 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/PdfViewer/SkPdfRenderer.cpp b/experimental/PdfViewer/SkPdfRenderer.cpp
index 85e3b6e..cd2d7d6 100644
--- a/experimental/PdfViewer/SkPdfRenderer.cpp
+++ b/experimental/PdfViewer/SkPdfRenderer.cpp
@@ -388,10 +388,7 @@
pdfContext->fGraphicsState.applyGraphicsState(&paint, false);
- canvas->save();
-
skfont->drawText(decoded, &paint, pdfContext, canvas);
- canvas->restore();
return kOK_PdfResult;
}
@@ -1581,7 +1578,7 @@
//Next, get the ColorSpace Dictionary from the Resource Dictionary:
SkPdfDictionary* colorSpaceResource = pdfContext->fGraphicsState.fResources->ColorSpace(pdfContext->fPdfDoc);
- SkPdfObject* colorSpace = pdfContext->fPdfDoc->resolveReference(colorSpaceResource->get(name));
+ SkPdfObject* colorSpace = colorSpaceResource ? pdfContext->fPdfDoc->resolveReference(colorSpaceResource->get(name)) : name;
if (colorSpace == NULL) {
colorOperator->fColorSpace = name->strRef();