[Libreoffice-commits] core.git: 2 commits - editeng/source include/editeng sw/qa writerfilter/source

Michael Stahl mstahl at redhat.com
Wed Nov 5 10:05:03 PST 2014


 editeng/source/editeng/eertfpar.cxx            |    2 
 editeng/source/editeng/eertfpar.hxx            |    2 
 editeng/source/rtf/rtfitem.cxx                 |   46 ++++++++---------
 editeng/source/rtf/svxrtf.cxx                  |   16 +++---
 include/editeng/svxrtf.hxx                     |   10 +--
 sw/qa/extras/rtfimport/data/fdo85812.rtf       |   31 ++++++++++++
 sw/qa/extras/rtfimport/rtfimport.cxx           |   64 ++++++++++++++++++++++++-
 writerfilter/source/rtftok/rtfdocumentimpl.cxx |    5 +
 8 files changed, 135 insertions(+), 41 deletions(-)

New commits:
commit a9a9718bb1f64318429562ecdaa3d3763d9e2f4a
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Nov 5 18:46:29 2014 +0100

    fdo#85812: RTF import: better fix for run type in new groups
    
    Apparently Word treats \ltrch \rtlch differently from
    \loch \hich \dbch when groups are opened.
    
    Change-Id: I257712521e8e77fa66e76857489797ecc675506e

diff --git a/sw/qa/extras/rtfimport/data/fdo85812.rtf b/sw/qa/extras/rtfimport/data/fdo85812.rtf
index 2f3e10c..152971f 100644
--- a/sw/qa/extras/rtfimport/data/fdo85812.rtf
+++ b/sw/qa/extras/rtfimport/data/fdo85812.rtf
@@ -4,5 +4,36 @@
 \pard\plain
 \lang1049\langfe2052\loch\hich\dbch\langnp1049\langfenp2052
 {\lang1033\langfe2052\dbch\langnp1033 \hich\dbch\loch This }
+
+\par\pard\plain
+\lang1049\langfe2052\loch\hich\dbch
+{CharGroup}
+\lang1033 AfterChar
+
+\par\pard\plain
+\lang1049\langfe2052\loch\hich\dbch
+{\*\bkmkstart foomark}{\*\bkmkend foomark}
+\lang1033 AfterBookmark
+
+\par\pard\plain
+\lang1049\langfe2052\loch\hich\lang5121\dbch\lang1049
+{CharGroup}
+\lang1033 AfterChar
+
+\par\pard\plain
+\lang1049\langfe2052\loch\hich\lang5121\dbch\lang1049
+{\*\bkmkstart foomark}{\*\bkmkend foomark}
+\lang1033 AfterBookmark
+
+\par\pard\plain
+\lang1049\langfe2052\ltrch\lang1033\rtlch\lang5121
+{CharGroup}
+\lang3073 AfterChar
+
+\par\pard\plain
+\lang1049\langfe2052\ltrch\lang1033\rtlch\lang5121
+{\*\bkmkstart foomark}{\*\bkmkend foomark}
+\lang3073 AfterBookmark
+
 {\lang1036\langfe2052\langnp1036 \par }
 }
diff --git a/sw/qa/extras/rtfimport/rtfimport.cxx b/sw/qa/extras/rtfimport/rtfimport.cxx
index a4dd898..3e28659 100644
--- a/sw/qa/extras/rtfimport/rtfimport.cxx
+++ b/sw/qa/extras/rtfimport/rtfimport.cxx
@@ -481,7 +481,69 @@ DECLARE_RTFIMPORT_TEST(testFdo85812, "fdo85812.rtf")
     // the \lang inside the group was applied to CJK not Western
     CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
     CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
-
+    // further testing indicates that Word is doing really weird stuff
+    // \loch \hich \dbch is reset by opening a group
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(2), 1, "CharGroup"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("ru"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("RU"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(2), 2, "AfterChar"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(3), 2, "AfterBookmark"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(4), 1, "CharGroup"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("ru"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("RU"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(4), 1, "CharGroup"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("DZ"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(4), 2, "AfterChar"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(4), 2, "AfterChar"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("DZ"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(5), 2, "AfterBookmark"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(5), 2, "AfterBookmark"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("DZ"), locale.Country);
+    // \ltrch \rtlch works differently - it is sticky across groups
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(6), 1, "CharGroup"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(6), 1, "CharGroup"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("DZ"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(6), 2, "AfterChar"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(6), 2, "AfterChar"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("EG"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(7), 2, "AfterBookmark"), "CharLocale");
+    CPPUNIT_ASSERT_EQUAL(OUString("en"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("US"), locale.Country);
+    locale = getProperty<lang::Locale>(
+                getRun(getParagraph(7), 2, "AfterBookmark"), "CharLocaleComplex");
+    CPPUNIT_ASSERT_EQUAL(OUString("ar"), locale.Language);
+    CPPUNIT_ASSERT_EQUAL(OUString("EG"), locale.Country);
 }
 
 DECLARE_RTFIMPORT_TEST(testFdo47764, "fdo47764.rtf")
diff --git a/writerfilter/source/rtftok/rtfdocumentimpl.cxx b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
index 99693f3..a568d95 100644
--- a/writerfilter/source/rtftok/rtfdocumentimpl.cxx
+++ b/writerfilter/source/rtftok/rtfdocumentimpl.cxx
@@ -4823,13 +4823,14 @@ int RTFDocumentImpl::pushState()
         m_aStates.push(m_aDefaultState);
     else
     {
+        // fdo#85812 group resets run type of _current_ and new state (but not RTL)
+        m_aStates.top().eRunType = RTFParserState::LOCH;
+
         if (m_aStates.top().nDestinationState == DESTINATION_MR)
             lcl_DestinationToMath(*m_aStates.top().pDestinationText, m_aMathBuffer, m_bMathNor);
         m_aStates.push(m_aStates.top());
     }
     m_aStates.top().aDestinationText.setLength(0); // was copied: always reset!
-    m_aStates.top().isRightToLeft = false; // fdo#85812 group resets run type
-    m_aStates.top().eRunType = RTFParserState::LOCH;
 
     m_pTokenizer->pushGroup();
 
commit 33b5b467224fef8d99ba3f6f4cba3d404119c100
Author: Michael Stahl <mstahl at redhat.com>
Date:   Wed Nov 5 14:22:27 2014 +0100

    editeng: SvxRTFParser sal_Bool to bool
    
    Change-Id: I2159f5c45ec6e6df965836705792cf2d71abbc42

diff --git a/editeng/source/editeng/eertfpar.cxx b/editeng/source/editeng/eertfpar.cxx
index 5b1d516..641b5b9 100644
--- a/editeng/source/editeng/eertfpar.cxx
+++ b/editeng/source/editeng/eertfpar.cxx
@@ -257,7 +257,7 @@ void EditRTFParser::InsertPara()
     nLastAction = ACTION_INSERTPARABRK;
 }
 
-void EditRTFParser::MovePos( int bForward )
+void EditRTFParser::MovePos( bool const bForward )
 {
     if( bForward )
         aCurSel = mpEditEngine->CursorRight(
diff --git a/editeng/source/editeng/eertfpar.hxx b/editeng/source/editeng/eertfpar.hxx
index 1f1b9d5..59d215e 100644
--- a/editeng/source/editeng/eertfpar.hxx
+++ b/editeng/source/editeng/eertfpar.hxx
@@ -79,7 +79,7 @@ private:
 protected:
     virtual void        InsertPara() SAL_OVERRIDE;
     virtual void        InsertText() SAL_OVERRIDE;
-    virtual void        MovePos( int bForward = sal_True ) SAL_OVERRIDE;
+    virtual void        MovePos( bool bForward = true ) SAL_OVERRIDE;
     virtual void        SetEndPrevPara( SvxNodeIdx*& rpNodePos,
                                             sal_Int32& rCntPos ) SAL_OVERRIDE;
 
diff --git a/editeng/source/rtf/rtfitem.cxx b/editeng/source/rtf/rtfitem.cxx
index 6d3c9eb..b58bd7c 100644
--- a/editeng/source/rtf/rtfitem.cxx
+++ b/editeng/source/rtf/rtfitem.cxx
@@ -204,7 +204,8 @@ void SvxRTFParser::SetScriptAttr( RTF_CharTypeDef eType, SfxItemSet& rSet,
 void SvxRTFParser::ReadAttr( int nToken, SfxItemSet* pSet )
 {
     DBG_ASSERT( pSet, "A SfxItemSet has to be provided as argument!" );
-    int bFirstToken = sal_True, bContinue = sal_True;
+    bool bFirstToken = true;
+    bool bContinue = true;
     sal_uInt16 nStyleNo = 0;        // default
     FontUnderline eUnderline;
     FontUnderline eOverline;
@@ -220,14 +221,14 @@ void SvxRTFParser::ReadAttr( int nToken, SfxItemSet* pSet )
         switch( nToken )
         {
         case RTF_PARD:
-            RTFPardPlain( sal_True, &pSet );
+            RTFPardPlain( true, &pSet );
             ResetPard();
             nStyleNo = 0;
             bPardTokenRead = true;
             break;
 
         case RTF_PLAIN:
-            RTFPardPlain( sal_False, &pSet );
+            RTFPardPlain( false, &pSet );
             break;
 
         default:
@@ -249,7 +250,7 @@ void SvxRTFParser::ReadAttr( int nToken, SfxItemSet* pSet )
                 {
                     // Open a new Group
                     SvxRTFItemStackType* pNew = new SvxRTFItemStackType(
-                                                *pAkt, *pInsPos, sal_True );
+                                                *pAkt, *pInsPos, true );
                     pNew->SetRTFDefaults( GetRTFDefaults() );
 
                     // "Set" all valid attributes up until this point
@@ -283,7 +284,7 @@ void SvxRTFParser::ReadAttr( int nToken, SfxItemSet* pSet )
                 {
                     if( !bFirstToken )
                         SkipToken( -1 );
-                    bContinue = sal_False;
+                    bContinue = false;
                 }
                 else
                 {
@@ -691,7 +692,7 @@ SET_FONTALIGNMENT:
                 if( aPlainMap.nContour &&
                     IsAttrSttPos() )        // not in the text flow?
                 {
-                    pSet->Put( SvxContourItem( nTokenValue ? sal_True : sal_False,
+                    pSet->Put( SvxContourItem(nTokenValue != 0,
                                 aPlainMap.nContour ));
                 }
                 break;
@@ -700,7 +701,7 @@ SET_FONTALIGNMENT:
                 if( aPlainMap.nShadowed &&
                     IsAttrSttPos() )        // not in the text flow?
                 {
-                    pSet->Put( SvxShadowedItem( nTokenValue ? sal_True : sal_False,
+                    pSet->Put( SvxShadowedItem(nTokenValue != 0,
                                 aPlainMap.nShadowed ));
                 }
                 break;
@@ -1139,10 +1140,9 @@ ATTR_SETEMPHASIS:
                         case RTF_HYPHEN:
                             {
                                 SvxHyphenZoneItem aHypenZone(
-                                            (nTokenValue & 1) ? sal_True : sal_False,
+                                            (nTokenValue & 1) != 0,
                                                 aPardMap.nHyphenzone );
-                                aHypenZone.SetPageEnd(
-                                            (nTokenValue & 2) ? sal_True : sal_False );
+                                aHypenZone.SetPageEnd((nTokenValue & 2) != 0);
 
                                 if( aPardMap.nHyphenzone &&
                                     RTF_HYPHLEAD == GetNextToken() &&
@@ -1165,7 +1165,7 @@ ATTR_SETEMPHASIS:
 
                         case RTF_SHADOW:
                             {
-                                int bSkip = sal_True;
+                                bool bSkip = true;
                                 do {    // middle check loop
                                     SvxShadowLocation eSL = SvxShadowLocation( nTokenValue );
                                     if( RTF_SHDW_DIST != GetNextToken() )
@@ -1188,7 +1188,7 @@ ATTR_SETEMPHASIS:
                                         pSet->Put( SvxShadowItem( aPardMap.nShadow,
                                                                   &aColor, nDist, eSL ) );
 
-                                    bSkip = sal_False;
+                                    bSkip = false;
                                 } while( false );
 
                                 if( bSkip )
@@ -1253,7 +1253,7 @@ ATTR_SETEMPHASIS:
                         if (!bFirstToken)
                             --nSkip;    // BRACELEFT: is the next token
                         SkipToken( nSkip );
-                        bContinue = sal_False;
+                        bContinue = false;
                     }
                 }
                 break;
@@ -1269,7 +1269,7 @@ ATTR_SETEMPHASIS:
                     // unknown token, so token "returned in Parser"
                     if( !bFirstToken )
                         SkipToken( -1 );
-                    bContinue = sal_False;
+                    bContinue = false;
                 }
             }
         }
@@ -1277,7 +1277,7 @@ ATTR_SETEMPHASIS:
         {
             nToken = GetNextToken();
         }
-        bFirstToken = sal_False;
+        bFirstToken = false;
     }
 }
 
@@ -1287,7 +1287,7 @@ void SvxRTFParser::ReadTabAttr( int nToken, SfxItemSet& rSet )
 // then read all the TabStops
     SvxTabStop aTabStop;
     SvxTabStopItem aAttr( 0, 0, SVX_TAB_ADJUST_DEFAULT, aPardMap.nTabStop );
-    int bContinue = sal_True;
+    bool bContinue = true;
     do {
         switch( nToken )
         {
@@ -1340,13 +1340,13 @@ void SvxRTFParser::ReadTabAttr( int nToken, SfxItemSet& rSet )
                 if( nSkip )
                 {
                     SkipToken( nSkip );     // Ignore back again
-                    bContinue = sal_False;
+                    bContinue = false;
                 }
             }
             break;
 
         default:
-            bContinue = sal_False;
+            bContinue = false;
         }
         if( bContinue )
         {
@@ -1703,15 +1703,15 @@ void SvxRTFParser::ReadBackgroundAttr( int nToken, SfxItemSet& rSet,
 }
 
 
-// pard / plain abarbeiten
-void SvxRTFParser::RTFPardPlain( int bPard, SfxItemSet** ppSet )
+// pard / plain handling
+void SvxRTFParser::RTFPardPlain( bool const bPard, SfxItemSet** ppSet )
 {
     if( !bNewGroup && !aAttrStack.empty() ) // not at the beginning of a new group
     {
         SvxRTFItemStackType* pAkt = aAttrStack.back();
 
         int nLastToken = GetStackPtr(-1)->nTokenId;
-        int bNewStkEntry = sal_True;
+        bool bNewStkEntry = true;
         if( RTF_PARD != nLastToken &&
             RTF_PLAIN != nLastToken &&
             BRACELEFT != nLastToken )
@@ -1719,7 +1719,7 @@ void SvxRTFParser::RTFPardPlain( int bPard, SfxItemSet** ppSet )
             if( pAkt->aAttrSet.Count() || pAkt->pChildList || pAkt->nStyleNo )
             {
                 // open a new group
-                SvxRTFItemStackType* pNew = new SvxRTFItemStackType( *pAkt, *pInsPos, sal_True );
+                SvxRTFItemStackType* pNew = new SvxRTFItemStackType( *pAkt, *pInsPos, true );
                 pNew->SetRTFDefaults( GetRTFDefaults() );
 
                 // Set all until here valid attributes
@@ -1733,7 +1733,7 @@ void SvxRTFParser::RTFPardPlain( int bPard, SfxItemSet** ppSet )
             {
                 // continue to use this entry as new
                 pAkt->SetStartPos( *pInsPos );
-                bNewStkEntry = sal_False;
+                bNewStkEntry = false;
             }
         }
 
diff --git a/editeng/source/rtf/svxrtf.cxx b/editeng/source/rtf/svxrtf.cxx
index 4489731..d67b49e 100644
--- a/editeng/source/rtf/svxrtf.cxx
+++ b/editeng/source/rtf/svxrtf.cxx
@@ -60,7 +60,7 @@ static rtl_TextEncoding lcl_GetDefaultTextEncodingForRTF()
 
 SvxRTFParser::SvxRTFParser( SfxItemPool& rPool, SvStream& rIn,
             uno::Reference<document::XDocumentProperties> i_xDocProps,
-            int bReadNewDoc )
+            bool const bReadNewDoc )
     : SvRTFParser( rIn, 5 )
     , rStrm(rIn)
     , aPlainMap(rPool)
@@ -822,7 +822,7 @@ const vcl::Font& SvxRTFParser::GetFont( sal_uInt16 nId )
     return *pFont;
 }
 
-SvxRTFItemStackType* SvxRTFParser::_GetAttrSet( int bCopyAttr )
+SvxRTFItemStackType* SvxRTFParser::_GetAttrSet( bool const bCopyAttr )
 {
     SvxRTFItemStackType* pAkt = aAttrStack.empty() ? 0 : aAttrStack.back();
     SvxRTFItemStackType* pNew;
@@ -927,7 +927,7 @@ void SvxRTFParser::AttrGroupEnd()   // process the current, delete from Stack
             {
                 // at the beginning of a paragraph? Move back one position
                 sal_Int32 nNd = pInsPos->GetNodeIdx();
-                MovePos( sal_False );
+                MovePos(false);
                 // if can not move backward then later dont move forward !
                 bCrsrBack = nNd != pInsPos->GetNodeIdx();
             }
@@ -951,7 +951,7 @@ void SvxRTFParser::AttrGroupEnd()   // process the current, delete from Stack
                         // - all paragraph attributes to get the area
                         //   up to the previous paragraph
                         SvxRTFItemStackType* pNew = new SvxRTFItemStackType(
-                                    *pOld, *pInsPos, sal_True );
+                                    *pOld, *pInsPos, true );
                         pNew->aAttrSet.SetParent( pOld->aAttrSet.GetParent() );
 
                         // Delete all paragraph attributes from pNew
@@ -1021,12 +1021,12 @@ void SvxRTFParser::AttrGroupEnd()   // process the current, delete from Stack
                     if( bCrsrBack && 50 < pAkt->pChildList->size() )
                     {
                         // at the beginning of a paragraph? Move back one position
-                        MovePos( sal_True );
+                        MovePos(true);
                         bCrsrBack = false;
 
                         // Open a new Group.
                         SvxRTFItemStackType* pNew = new SvxRTFItemStackType(
-                                                *pAkt, *pInsPos, sal_True );
+                                                *pAkt, *pInsPos, true );
                         pNew->SetRTFDefaults( GetRTFDefaults() );
 
                         // Set all until here valid Attributes
@@ -1047,7 +1047,7 @@ void SvxRTFParser::AttrGroupEnd()   // process the current, delete from Stack
 
             if( bCrsrBack )
                 // at the beginning of a paragraph? Move back one position
-                MovePos( sal_True );
+                MovePos(true);
 
         } while( false );
 
@@ -1161,7 +1161,7 @@ SvxRTFItemStackType::SvxRTFItemStackType(
 SvxRTFItemStackType::SvxRTFItemStackType(
         const SvxRTFItemStackType& rCpy,
         const SvxPosition& rPos,
-        int bCopyAttr )
+        bool const bCopyAttr )
     : aAttrSet( *rCpy.aAttrSet.GetPool(), rCpy.aAttrSet.GetRanges() ),
     pChildList( 0 ),
     nStyleNo( rCpy.nStyleNo )
diff --git a/include/editeng/svxrtf.hxx b/include/editeng/svxrtf.hxx
index 842cd11..4971578 100644
--- a/include/editeng/svxrtf.hxx
+++ b/include/editeng/svxrtf.hxx
@@ -214,7 +214,7 @@ class EDITENG_DLLPUBLIC SvxRTFParser : public SvRTFParser
     void ClearStyleTbl();
     void ClearAttrStack();
 
-    SvxRTFItemStackType* _GetAttrSet( int bCopyAttr=sal_False );  // Create new ItemStackType:s
+    SvxRTFItemStackType* _GetAttrSet(bool bCopyAttr = false);  // Create new ItemStackType:s
     void _ClearStyleAttr( SvxRTFItemStackType& rStkType );
 
     // Sets all the attributes that are different from the current
@@ -223,7 +223,7 @@ class EDITENG_DLLPUBLIC SvxRTFParser : public SvRTFParser
     void SetDefault( int nToken, int nValue );
 
     // Execute pard / plain
-    void RTFPardPlain( int bPard, SfxItemSet** ppSet );
+    void RTFPardPlain( bool bPard, SfxItemSet** ppSet );
 
     void BuildWhichTbl();
 
@@ -273,7 +273,7 @@ protected:
 
 
     virtual void InsertText() = 0;
-    virtual void MovePos( int bForward = sal_True ) = 0;
+    virtual void MovePos( bool bForward = true ) = 0;
     virtual void SetEndPrevPara( SvxNodeIdx*& rpNodePos,
                                  sal_Int32& rCntPos )=0;
     virtual void SetAttrInDoc( SvxRTFItemStackType &rSet );
@@ -287,7 +287,7 @@ protected:
                     SvStream& rIn,
                     ::com::sun::star::uno::Reference<
                         ::com::sun::star::document::XDocumentProperties> i_xDocProps,
-                    int bReadNewDoc = sal_True );
+                    bool bReadNewDoc = true );
     virtual ~SvxRTFParser();
 
     bool IsNewDoc() const               { return bNewDoc; }
@@ -364,7 +364,7 @@ class EDITENG_DLLPUBLIC SvxRTFItemStackType
 
 public:
     SvxRTFItemStackType( const SvxRTFItemStackType&, const SvxPosition&,
-                        int bCopyAttr = sal_False );
+                        bool bCopyAttr = false );
     ~SvxRTFItemStackType();
     //cmc, I'm very suspicios about SetStartPos, it doesn't change
     //its children's starting position, and the implementation looks


More information about the Libreoffice-commits mailing list