diff options
author | Michael Stahl <mstahl@redhat.com> | 2013-02-20 16:32:59 +0100 |
---|---|---|
committer | Michael Stahl <mstahl@redhat.com> | 2013-02-20 16:39:59 +0100 |
commit | 6145c6efa4f346287ed9693c9d00038d829d5a35 (patch) | |
tree | 3c5527d25aef5e01ead3410fa7efa7eec7e41706 /writerfilter | |
parent | 4c165c708ce852b4d52527422b327b2f6ad73685 (diff) |
fdo#60789: writerfilter: do not insert a character at field start
The character inserted in DomainMapper_Impl::PushFieldContext() causes
problems in this bugdoc because there is a commentRangeStart immediately
before a text field and the call to delete it via setString("") disposes
the SwXTextRange that is stored in m_aAnnotationPosition.m_xStart,
which results in an exception when trying to insert the comment.
At least all the fields in the bugdoc import fine with this change.
Change-Id: I6c08d72fafb0529e8612f1e35b2c8b871edb5a52
Diffstat (limited to 'writerfilter')
-rw-r--r-- | writerfilter/source/dmapper/DomainMapper_Impl.cxx | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/writerfilter/source/dmapper/DomainMapper_Impl.cxx b/writerfilter/source/dmapper/DomainMapper_Impl.cxx index f5bc4867a26b..28ad15496e50 100644 --- a/writerfilter/source/dmapper/DomainMapper_Impl.cxx +++ b/writerfilter/source/dmapper/DomainMapper_Impl.cxx @@ -2035,10 +2035,7 @@ void DomainMapper_Impl::PushFieldContext() uno::Reference< text::XTextRange > xStart; if (xTextAppend.is()) { - //insert a dummy char to make sure the start range doesn't move together with the to-be-appended text - xTextAppend->appendTextPortion(OUString( '-' ), uno::Sequence< beans::PropertyValue >() ); uno::Reference< text::XTextCursor > xCrsr = xTextAppend->createTextCursorByRange( xTextAppend->getEnd() ); - xCrsr->goLeft( 1, false ); xStart = xCrsr->getStart(); } m_aFieldStack.push( FieldContextPtr( new FieldContext( xStart ) ) ); @@ -3312,9 +3309,6 @@ void DomainMapper_Impl::PopFieldContext() try { uno::Reference< text::XTextCursor > xCrsr = xTextAppend->createTextCursorByRange(pContext->GetStartRange()); - //remove the dummy character - xCrsr->goRight( 1, true ); - xCrsr->setString( OUString() ); uno::Reference< text::XTextContent > xToInsert( pContext->GetTOC(), uno::UNO_QUERY ); if( xToInsert.is() ) { |