tdf#161631 writerfilter: move another member to SubstreamContext

The problem is that the bugdoc contains a table in the footer, which
causes m_bDummyParaAddedForTableInSection to be set, which erroneously
causes the last paragraph in the body to be removed.

(regression from commit 86ad08f9d2)

Change-Id: I148785c54c37dc25f7d239b5898aec9fb5455f40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169191
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
This commit is contained in:
Michael Stahl 2024-06-19 11:54:13 +02:00
parent 0740c9cde9
commit ef77086255
2 changed files with 3 additions and 5 deletions

View file

@ -373,7 +373,6 @@ DomainMapper_Impl::DomainMapper_Impl(
m_bIsParaMarkerChange( false ),
m_bIsParaMarkerMove( false ),
m_bRedlineImageInPreviousRun( false ),
m_bDummyParaAddedForTableInSection( false ),
m_bIsLastSectionGroup( false ),
m_bUsingEnhancedFields( false ),
m_nAnnotationId( -1 ),
@ -938,10 +937,9 @@ void DomainMapper_Impl::SetIsFirstParagraphInShape(bool bIsFirst)
void DomainMapper_Impl::SetIsDummyParaAddedForTableInSection( bool bIsAdded )
{
m_bDummyParaAddedForTableInSection = bIsAdded;
m_StreamStateStack.top().bDummyParaAddedForTableInSection = bIsAdded;
}
void DomainMapper_Impl::SetIsTextFrameInserted( bool bIsInserted )
{
m_StreamStateStack.top().bTextFrameInserted = bIsInserted;

View file

@ -266,6 +266,7 @@ struct SubstreamContext
bool bTextFrameInserted = false;
bool bIsFirstRun = false;
bool bIsOutsideAParagraph = true;
bool bDummyParaAddedForTableInSection = false; // tdf#161631
std::map<sal_Int32, css::uno::Any> deferredCharacterProperties;
};
@ -658,7 +659,6 @@ private:
// text ZWSPs to keep the change tracking of the image in Writer.)
bool m_bRedlineImageInPreviousRun;
bool m_bDummyParaAddedForTableInSection;
bool m_bIsLastSectionGroup;
bool m_bUsingEnhancedFields;
@ -770,7 +770,7 @@ public:
void SetIsFirstParagraphInShape(bool bIsFirst);
bool GetIsFirstParagraphInShape() const { return m_StreamStateStack.top().bIsFirstParaInShape; }
void SetIsDummyParaAddedForTableInSection( bool bIsAdded );
bool GetIsDummyParaAddedForTableInSection() const { return m_bDummyParaAddedForTableInSection;}
bool GetIsDummyParaAddedForTableInSection() const { return m_StreamStateStack.top().bDummyParaAddedForTableInSection; }
/// Track if a textframe has been inserted into this section
void SetIsTextFrameInserted( bool bIsInserted );