partial revert tdf#153178 writerfilter: do not create text frame spuriously

If HoriAnchor/VertAnchor are assigned, that is enough to create a frame.

make CppunitTest_sw_rtfexport8 CPPUNIT_TEST_NAME=testTdf158586_0B

Note: because of a regression, this was already one page before
this commit, so need to go back to the time of the reverted patch.

Change-Id: Iddbe1cc4ba6d6e95e2d977a227ae6cab5271007e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160743
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160981
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160999
diff --git a/sw/qa/extras/rtfexport/data/tdf158586_pageBreak0B.rtf b/sw/qa/extras/rtfexport/data/tdf158586_pageBreak0B.rtf
new file mode 100644
index 0000000..587e905
--- /dev/null
+++ b/sw/qa/extras/rtfexport/data/tdf158586_pageBreak0B.rtf
@@ -0,0 +1,15 @@
{\rtf1



\paperw8419\paperh5953



\spltpgpar



\ltrpar \sectd



\pard\plain \phpg\pvpg



\page \sect \sectd \sbknone



\pard\plain First page

\par

}

diff --git a/sw/qa/extras/rtfexport/rtfexport8.cxx b/sw/qa/extras/rtfexport/rtfexport8.cxx
index 80309ff..bcba0a9 100644
--- a/sw/qa/extras/rtfexport/rtfexport8.cxx
+++ b/sw/qa/extras/rtfexport/rtfexport8.cxx
@@ -56,6 +56,12 @@ DECLARE_RTFEXPORT_TEST(testTdf158586_0, "tdf158586_pageBreak0.rtf")
    // assertXPathContent(pLayout, "//page[1]/body/txt"_ostr, "First page");}
}

DECLARE_RTFEXPORT_TEST(testTdf158586_0B, "tdf158586_pageBreak0B.rtf")
{
    // The specified page break must be lost because it is in a text frame
    CPPUNIT_ASSERT_EQUAL(1, getPages());
}

DECLARE_RTFEXPORT_TEST(testTdf158586_1, "tdf158586_pageBreak1.rtf")
{
    // None of the specified text frame settings initiates a real text frame - page break not lost
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 36f71be..0890169 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -4010,6 +4010,8 @@ bool RTFFrame::hasProperties() const
{
    // tdf#153178 \dxfrtext \dfrmtxtx \dfrmtxty \wrapdefault do *not* create frame
    return m_nX != 0 || m_nY != 0 || m_nW != 0 || m_nH != 0
           || (m_nHoriAnchor && m_nHoriAnchor != NS_ooxml::LN_Value_doc_ST_HAnchor_text)
           || (m_nVertAnchor && m_nVertAnchor != NS_ooxml::LN_Value_doc_ST_VAnchor_margin)
           || (m_oWrap && *m_oWrap != NS_ooxml::LN_Value_doc_ST_Wrap_auto);
}