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();