summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorthestig <thestig@chromium.org>2016-06-22 07:03:23 -0700
committerCommit bot <commit-bot@chromium.org>2016-06-22 07:03:23 -0700
commit29ce9238c6a05abb1de5e4175c97e4fcadd5640f (patch)
treeddb81bfe0829948ca70d8b3f6b56bf68c6c9346b
parent907a5223ea5abd09878de20cc74c59ebd0d6c3c8 (diff)
downloadpdfium-29ce9238c6a05abb1de5e4175c97e4fcadd5640f.tar.xz
Fix memory leaks in EmbedderTest::OpenDocument().
EmbedderTest::OpenDocument() does not gracefully handle the case of being called twice in a given test case. So avoid doing that. Review-Url: https://codereview.chromium.org/2088093002
-rw-r--r--core/fpdfapi/fpdf_parser/cpdf_parser_embeddertest.cpp5
-rw-r--r--testing/embedder_test.cpp1
2 files changed, 5 insertions, 1 deletions
diff --git a/core/fpdfapi/fpdf_parser/cpdf_parser_embeddertest.cpp b/core/fpdfapi/fpdf_parser/cpdf_parser_embeddertest.cpp
index 66b29a91c4..f523d6b31b 100644
--- a/core/fpdfapi/fpdf_parser/cpdf_parser_embeddertest.cpp
+++ b/core/fpdfapi/fpdf_parser/cpdf_parser_embeddertest.cpp
@@ -35,8 +35,11 @@ TEST_F(CPDFParserEmbeddertest, Feature_Linearized_Loading) {
EXPECT_TRUE(OpenDocument("feature_linearized_loading.pdf", nullptr, true));
}
-TEST_F(CPDFParserEmbeddertest, Bug_325) {
+TEST_F(CPDFParserEmbeddertest, Bug_325a) {
EXPECT_FALSE(OpenDocument("bug_325_a.pdf"));
+}
+
+TEST_F(CPDFParserEmbeddertest, Bug_325b) {
EXPECT_FALSE(OpenDocument("bug_325_b.pdf"));
}
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp
index 59190a7751..9ef1e06dca 100644
--- a/testing/embedder_test.cpp
+++ b/testing/embedder_test.cpp
@@ -120,6 +120,7 @@ bool EmbedderTest::OpenDocument(const std::string& filename,
if (!file_contents_)
return false;
+ EXPECT_TRUE(!loader_);
loader_ = new TestLoader(file_contents_.get(), file_length_);
file_access_.m_FileLen = static_cast<unsigned long>(file_length_);
file_access_.m_GetBlock = TestLoader::GetBlock;