summaryrefslogtreecommitdiff
path: root/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
diff options
context:
space:
mode:
authorOliver Chang <ochang@chromium.org>2015-10-22 16:32:14 -0700
committerOliver Chang <ochang@chromium.org>2015-10-22 16:32:14 -0700
commit3bfb1dcf56f8470b693ad1126e24e65f9d17926c (patch)
treea47bd82c8244d643ad156c466608a7851dc5fe3b /core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
parent61fe6edb3f789feefa4bd0c8475b9645fae0d09e (diff)
downloadpdfium-3bfb1dcf56f8470b693ad1126e24e65f9d17926c.tar.xz
Set a recursion limit on CPDF_DataAvail::CheckPageNode
This limit mirrors FX_MAX_PAGE_LEVEL in fpdf_parser_document.cpp R=thestig@chromium.org, tsepez@chromium.org BUG=544880 Review URL: https://codereview.chromium.org/1421743003 .
Diffstat (limited to 'core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp')
-rw-r--r--core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
index 96ea766d4d..b6cfc4e89f 100644
--- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
+++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
@@ -19,3 +19,12 @@ TEST_F(FPDFParserEmbeddertest, Bug_481363) {
EXPECT_NE(nullptr, page);
UnloadPage(page);
}
+
+TEST_F(FPDFParserEmbeddertest, Bug_544880) {
+ // Test self referencing /Pages object.
+ EXPECT_TRUE(OpenDocument("testing/resources/bug_544880.pdf"));
+ // Shouldn't crash. We don't check the return value here because we get the
+ // the count from the "/Count 1" in the testcase (at the time of writing)
+ // rather than the actual count (0).
+ (void)GetPageCount();
+}