summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp2
-rw-r--r--fpdfsdk/src/fpdf_dataavail_embeddertest.cpp8
-rw-r--r--fpdfsdk/src/fpdfview_embeddertest.cpp6
-rw-r--r--testing/embedder_test.cpp11
4 files changed, 15 insertions, 12 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 b6cfc4e89f..ed2863bcf3 100644
--- a/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
+++ b/core/src/fpdfapi/fpdf_parser/fpdf_parser_parser_embeddertest.cpp
@@ -9,7 +9,7 @@ class FPDFParserEmbeddertest : public EmbedderTest {};
TEST_F(FPDFParserEmbeddertest, LoadError_454695) {
// Test trailer dictionary with $$ze instead of Size.
- EXPECT_TRUE(OpenDocument("testing/resources/bug_454695.pdf"));
+ EXPECT_FALSE(OpenDocument("testing/resources/bug_454695.pdf"));
}
TEST_F(FPDFParserEmbeddertest, Bug_481363) {
diff --git a/fpdfsdk/src/fpdf_dataavail_embeddertest.cpp b/fpdfsdk/src/fpdf_dataavail_embeddertest.cpp
index 65e9348f55..730a793d63 100644
--- a/fpdfsdk/src/fpdf_dataavail_embeddertest.cpp
+++ b/fpdfsdk/src/fpdf_dataavail_embeddertest.cpp
@@ -10,13 +10,13 @@
class FPDFDataAvailEmbeddertest : public EmbedderTest {};
TEST_F(FPDFDataAvailEmbeddertest, TrailerUnterminated) {
- // Document must open without crashing but is too malformed to be available.
- EXPECT_TRUE(OpenDocument("testing/resources/trailer_unterminated.pdf"));
+ // Document must load without crashing but is too malformed to be available.
+ EXPECT_FALSE(OpenDocument("testing/resources/trailer_unterminated.pdf"));
EXPECT_FALSE(FPDFAvail_IsDocAvail(avail_, &hints_));
}
TEST_F(FPDFDataAvailEmbeddertest, TrailerAsHexstring) {
- // Document must open without crashing but is too malformed to be available.
- EXPECT_TRUE(OpenDocument("testing/resources/trailer_as_hexstring.pdf"));
+ // Document must load without crashing but is too malformed to be available.
+ EXPECT_FALSE(OpenDocument("testing/resources/trailer_as_hexstring.pdf"));
EXPECT_FALSE(FPDFAvail_IsDocAvail(avail_, &hints_));
}
diff --git a/fpdfsdk/src/fpdfview_embeddertest.cpp b/fpdfsdk/src/fpdfview_embeddertest.cpp
index 896a196fb7..c06adb4102 100644
--- a/fpdfsdk/src/fpdfview_embeddertest.cpp
+++ b/fpdfsdk/src/fpdfview_embeddertest.cpp
@@ -184,7 +184,8 @@ TEST_F(FPDFViewEmbeddertest, Crasher_113) {
}
TEST_F(FPDFViewEmbeddertest, Crasher_451830) {
- EXPECT_TRUE(OpenDocument("testing/resources/bug_451830.pdf"));
+ // Document is damaged and can't be opened.
+ EXPECT_FALSE(OpenDocument("testing/resources/bug_451830.pdf"));
}
TEST_F(FPDFViewEmbeddertest, Crasher_452455) {
@@ -195,5 +196,6 @@ TEST_F(FPDFViewEmbeddertest, Crasher_452455) {
}
TEST_F(FPDFViewEmbeddertest, Crasher3) {
- EXPECT_TRUE(OpenDocument("testing/resources/bug_454695.pdf"));
+ // Document is damanged and can't be opened.
+ EXPECT_FALSE(OpenDocument("testing/resources/bug_454695.pdf"));
}
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp
index 723bad7f8a..b474955566 100644
--- a/testing/embedder_test.cpp
+++ b/testing/embedder_test.cpp
@@ -93,9 +93,8 @@ void EmbedderTest::TearDown() {
bool EmbedderTest::OpenDocument(const std::string& filename) {
file_contents_ = GetFileContents(filename.c_str(), &file_length_);
- if (!file_contents_) {
+ if (!file_contents_)
return false;
- }
loader_ = new TestLoader(file_contents_, file_length_);
file_access_.m_FileLen = static_cast<unsigned long>(file_length_);
@@ -111,11 +110,13 @@ bool EmbedderTest::OpenDocument(const std::string& filename) {
avail_ = FPDFAvail_Create(&file_avail_, &file_access_);
(void)FPDFAvail_IsDocAvail(avail_, &hints_);
- if (!FPDFAvail_IsLinearized(avail_)) {
+ if (!FPDFAvail_IsLinearized(avail_))
document_ = FPDF_LoadCustomDocument(&file_access_, nullptr);
- } else {
+ else
document_ = FPDFAvail_GetDocument(avail_, nullptr);
- }
+
+ if (!document_)
+ return false;
(void)FPDF_GetDocPermissions(document_);
(void)FPDFAvail_IsFormAvail(avail_, &hints_);