summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--samples/pdfium_test.cc5
-rw-r--r--testing/embedder_test.cpp4
2 files changed, 9 insertions, 0 deletions
diff --git a/samples/pdfium_test.cc b/samples/pdfium_test.cc
index 417bd5603b..aa171afe3f 100644
--- a/samples/pdfium_test.cc
+++ b/samples/pdfium_test.cc
@@ -563,8 +563,13 @@ void RenderPdf(const std::string& name, const char* pBuf, size_t len,
}
FORM_DoDocumentAAction(form, FPDFDOC_AACTION_WC);
+
+ // Note: The shut down order here is the reverse of the non-XFA branch order.
+ // Need to work out if this is required, and if it is, the lifetimes of
+ // objects owned by |doc| that |form| reference.
FPDF_CloseDocument(doc);
FPDFDOC_ExitFormFillEnvironment(form);
+
FPDFAvail_Destroy(pdf_avail);
fprintf(stderr, "Rendered %d pages.\n", rendered_pages);
diff --git a/testing/embedder_test.cpp b/testing/embedder_test.cpp
index 1f3f6ef542..72b858d276 100644
--- a/testing/embedder_test.cpp
+++ b/testing/embedder_test.cpp
@@ -170,6 +170,10 @@ void EmbedderTest::SetUp() {
void EmbedderTest::TearDown() {
if (document_) {
FORM_DoDocumentAAction(form_handle_, FPDFDOC_AACTION_WC);
+
+ // Note: The shut down order here is the reverse of the non-XFA branch
+ // order. Need to work out if this is required, and if it is, the lifetimes
+ // of objects owned by |doc| that |form| reference.
FPDF_CloseDocument(document_);
FPDFDOC_ExitFormFillEnvironment(form_handle_);
}