From e40678ed8a22ecd57421877af39cf7f281f618c4 Mon Sep 17 00:00:00 2001 From: Dan Sinclair Date: Thu, 15 Feb 2018 18:12:29 +0000 Subject: Make the CFX_XMLNode a MaybeOwned pointer This CL removes the HasOwnXML flag from the CXFA_Node objects and instead uses a MaybeOwned pointer to keep track of the XML nodes. Change-Id: Ie678258247ec21ecb15c639647b189e140586d25 Reviewed-on: https://pdfium-review.googlesource.com/26811 Reviewed-by: Tom Sepez Commit-Queue: dsinclair --- core/fxcrt/maybe_owned.h | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'core/fxcrt/maybe_owned.h') diff --git a/core/fxcrt/maybe_owned.h b/core/fxcrt/maybe_owned.h index 130d2bdc3c..d920ea7a91 100644 --- a/core/fxcrt/maybe_owned.h +++ b/core/fxcrt/maybe_owned.h @@ -41,6 +41,11 @@ class MaybeOwned { m_pObj = ptr; m_pOwnedObj.reset(); } + // Helpful for untangling a collection of intertwined MaybeOwned<>. + void ResetIfUnowned() { + if (!IsOwned()) + Reset(); + } T* Get() const { return m_pObj.Get(); } bool IsOwned() const { return !!m_pOwnedObj; } -- cgit v1.2.3