diff options
author | Henrique Nakashima <hnakashima@chromium.org> | 2018-07-24 20:25:45 +0000 |
---|---|---|
committer | Chromium commit bot <commit-bot@chromium.org> | 2018-07-24 20:25:45 +0000 |
commit | 36b2059cae7fc851c9f35babd35ec82a7a5d9694 (patch) | |
tree | 244a0e4b80ae31c9459cd73d80bd71b1166bb35e /xfa/fxfa/parser/cxfa_document.cpp | |
parent | 315f94a0961792ec08428c94105caf3d8637acd1 (diff) | |
download | pdfium-36b2059cae7fc851c9f35babd35ec82a7a5d9694.tar.xz |
Fix UAF in CPDFSDK_Widget::GetMixXFAWidget().chromium/3502
Do not allow instanceManager methods to run in Foreground XFA forms.
They are static, and their widgets should not be inserted or removed.
See "XML Forms Architecture (XFA) Specification Version 3.3", page 272.
Bug: chromium:860697
Change-Id: Ia96834e085ee508618ca4dcb2bd5271466369ede
Reviewed-on: https://pdfium-review.googlesource.com/38751
Reviewed-by: Tom Sepez <tsepez@chromium.org>
Commit-Queue: Henrique Nakashima <hnakashima@chromium.org>
Diffstat (limited to 'xfa/fxfa/parser/cxfa_document.cpp')
-rw-r--r-- | xfa/fxfa/parser/cxfa_document.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xfa/fxfa/parser/cxfa_document.cpp b/xfa/fxfa/parser/cxfa_document.cpp index 5ed1d7f3ec..5a85482b17 100644 --- a/xfa/fxfa/parser/cxfa_document.cpp +++ b/xfa/fxfa/parser/cxfa_document.cpp @@ -1478,6 +1478,10 @@ XFA_VERSION CXFA_Document::RecognizeXFAVersionNumber( return eVersion; } +FormType CXFA_Document::GetFormType() const { + return GetNotify()->GetHDOC()->GetFormType(); +} + CXFA_Node* CXFA_Document::GetNodeByID(CXFA_Node* pRoot, const WideStringView& wsID) const { if (!pRoot || wsID.IsEmpty()) |