summaryrefslogtreecommitdiff
path: root/core/src/fpdfapi/fpdf_render
diff options
context:
space:
mode:
authorDan Sinclair <dsinclair@chromium.org>2015-10-27 12:19:11 -0400
committerDan Sinclair <dsinclair@chromium.org>2015-10-27 12:19:11 -0400
commit431ba1865443e5cba4dabc74e61ece4daba11b5b (patch)
tree39ed3ce4e0d1b36c0fe9ffce6a0d0a2925fb4ea0 /core/src/fpdfapi/fpdf_render
parent88e28aa259bc0f318cccf17eebabd3c887a15a46 (diff)
downloadpdfium-431ba1865443e5cba4dabc74e61ece4daba11b5b.tar.xz
Merge to XFA: Type check the m_pShadingObj before assuming it's a stream.
The m_pShadingObj can be a stream or a dictionary depending on how it's used. This CL adds some simple type checking to make sure that the type of the object matches what we expect. BUG=chromium:547706 TBR=tsepez@chromium.org Review URL: https://codereview.chromium.org/1421973004 . (cherry picked from commit 4ef782ab57979add3e3910d6bcfde6ef59f65724) Review URL: https://codereview.chromium.org/1422253002 .
Diffstat (limited to 'core/src/fpdfapi/fpdf_render')
-rw-r--r--core/src/fpdfapi/fpdf_render/fpdf_render_pattern_embeddertest.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/core/src/fpdfapi/fpdf_render/fpdf_render_pattern_embeddertest.cpp b/core/src/fpdfapi/fpdf_render/fpdf_render_pattern_embeddertest.cpp
new file mode 100644
index 0000000000..30d7a416be
--- /dev/null
+++ b/core/src/fpdfapi/fpdf_render/fpdf_render_pattern_embeddertest.cpp
@@ -0,0 +1,16 @@
+// Copyright 2015 PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "../../../testing/embedder_test.h"
+#include "testing/gtest/include/gtest/gtest.h"
+
+class FPDFRenderPatternEmbeddertest : public EmbedderTest {};
+
+TEST_F(FPDFRenderPatternEmbeddertest, LoadError_547706) {
+ // Test shading where object is a dictionary instead of a stream.
+ EXPECT_TRUE(OpenDocument("testing/resources/bug_547706.pdf"));
+ FPDF_PAGE page = LoadPage(0);
+ RenderPage(page);
+ UnloadPage(page);
+}