ofz#6208 Indirect-leak

Change-Id: I8d6761bd951cc1ddd4a45eabb26428bc40c2271a
Reviewed-on: https://gerrit.libreoffice.org/49600
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/lotuswordpro/inc/xfilter/xfcontent.hxx b/lotuswordpro/inc/xfilter/xfcontent.hxx
index 611f9da..38021b4 100644
--- a/lotuswordpro/inc/xfilter/xfcontent.hxx
+++ b/lotuswordpro/inc/xfilter/xfcontent.hxx
@@ -105,6 +105,7 @@ public:
protected:
    XFContent()
        : m_bDoingToXml(false)
        , m_bInserted(false)
    {
    }

@@ -115,6 +116,8 @@ protected:
    OUString m_strStyleName;
private:
    bool m_bDoingToXml;
public:
    bool m_bInserted;
};

#endif
diff --git a/lotuswordpro/qa/cppunit/data/fail/ofz6208-1.lwp b/lotuswordpro/qa/cppunit/data/fail/ofz6208-1.lwp
new file mode 100644
index 0000000..5b06806
--- /dev/null
+++ b/lotuswordpro/qa/cppunit/data/fail/ofz6208-1.lwp
Binary files differ
diff --git a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
index 67dc590..b1398bc0 100644
--- a/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
+++ b/lotuswordpro/source/filter/xfilter/xfcontentcontainer.cxx
@@ -68,8 +68,11 @@ XFContentContainer::~XFContentContainer()
{
}

void    XFContentContainer::Add(XFContent *pContent)
void XFContentContainer::Add(XFContent *pContent)
{
    if (pContent->m_bInserted)
        throw std::runtime_error("already inserted");
    pContent->m_bInserted = true;
    m_aContents.emplace_back(pContent);
}

@@ -80,12 +83,12 @@ void XFContentContainer::Add(const OUString& text)
    Add(xTC.get());
}

int     XFContentContainer::GetCount() const
int XFContentContainer::GetCount() const
{
    return m_aContents.size();
}

void    XFContentContainer::Reset()
void XFContentContainer::Reset()
{
    m_aContents.clear();
}