From 1b54bc1474af7923f6b82496924978cb87844ff0 Mon Sep 17 00:00:00 2001 From: Henrique Nakashima Date: Wed, 25 Jul 2018 17:26:28 +0000 Subject: Disable submit in XFA forms. Bug: chromium:842503 Change-Id: If411815d8324929f482e3cad0fda54f24d370c2a Reviewed-on: https://pdfium-review.googlesource.com/37830 Reviewed-by: Tom Sepez Commit-Queue: Henrique Nakashima --- xfa/fxfa/parser/cxfa_event.cpp | 2 ++ xfa/fxfa/parser/cxfa_event.h | 4 ++++ xfa/fxfa/parser/cxfa_node.cpp | 6 ++++++ 3 files changed, 12 insertions(+) (limited to 'xfa/fxfa/parser') diff --git a/xfa/fxfa/parser/cxfa_event.cpp b/xfa/fxfa/parser/cxfa_event.cpp index 3dfa8b870e..8b4a0b56a2 100644 --- a/xfa/fxfa/parser/cxfa_event.cpp +++ b/xfa/fxfa/parser/cxfa_event.cpp @@ -73,6 +73,8 @@ CXFA_Script* CXFA_Event::GetScriptIfExists() { return GetChild(0, XFA_Element::Script, false); } +#ifdef PDF_XFA_ELEMENT_SUBMIT_ENABLED CXFA_Submit* CXFA_Event::GetSubmitIfExists() { return GetChild(0, XFA_Element::Submit, false); } +#endif // PDF_XFA_ELEMENT_SUBMIT_ENABLED diff --git a/xfa/fxfa/parser/cxfa_event.h b/xfa/fxfa/parser/cxfa_event.h index a410805675..6902b52eef 100644 --- a/xfa/fxfa/parser/cxfa_event.h +++ b/xfa/fxfa/parser/cxfa_event.h @@ -20,7 +20,11 @@ class CXFA_Event : public CXFA_Node { XFA_AttributeEnum GetActivity(); XFA_Element GetEventType() const; CXFA_Script* GetScriptIfExists(); + +#ifdef PDF_XFA_ELEMENT_SUBMIT_ENABLED CXFA_Submit* GetSubmitIfExists(); +#endif // PDF_XFA_ELEMENT_SUBMIT_ENABLED + WideString GetRef(); }; diff --git a/xfa/fxfa/parser/cxfa_node.cpp b/xfa/fxfa/parser/cxfa_node.cpp index 5f919b7b14..363af54028 100644 --- a/xfa/fxfa/parser/cxfa_node.cpp +++ b/xfa/fxfa/parser/cxfa_node.cpp @@ -2008,11 +2008,17 @@ int32_t CXFA_Node::ProcessEvent(CXFA_FFDocView* docView, case XFA_Element::SignData: break; case XFA_Element::Submit: { +// TODO(crbug.com/867485): Submit is disabled for now. Fix it and reenable this +// code. +#ifdef PDF_XFA_ELEMENT_SUBMIT_ENABLED CXFA_Submit* submit = event->GetSubmitIfExists(); if (!submit) return XFA_EVENTERROR_NotExist; return docView->GetDoc()->GetDocEnvironment()->Submit(docView->GetDoc(), submit); +#else + return XFA_EVENTERROR_Disabled; +#endif // PDF_XFA_ELEMENT_SUBMIT_ENABLED } default: break; -- cgit v1.2.3