diff options
author | Oliver Chang <ochang@chromium.org> | 2015-10-22 16:42:33 -0700 |
---|---|---|
committer | Oliver Chang <ochang@chromium.org> | 2015-10-22 16:42:33 -0700 |
commit | 361a48c04bf14db54731ac99c3c3411b62684775 (patch) | |
tree | 6661a83e3c66dbb61195a95dd5183870c39cee24 /core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp | |
parent | 2f604d58ba2d84034c68094bc6d7b63ba321821e (diff) | |
download | pdfium-361a48c04bf14db54731ac99c3c3411b62684775.tar.xz |
Merge to XFA: Set a recursion limit on CPDF_DataAvail::CheckPageNode
This limit mirrors FX_MAX_PAGE_LEVEL in fpdf_parser_document.cpp
Clean merge.
TBR=thestig@chromium.org
BUG=544880
Review URL: https://codereview.chromium.org/1421743003 .
(cherry picked from commit 3bfb1dcf56f8470b693ad1126e24e65f9d17926c)
Review URL: https://codereview.chromium.org/1418173003 .
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.cpp | 9 |
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(); +} |