diff options
author | Michael Stahl <mstahl@redhat.com> | 2014-02-08 00:23:10 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2014-02-08 12:32:21 +0000 |
commit | 2b3605bc8b2390bdde0d5ea52996fb4db42b0ce7 (patch) | |
tree | aac5c412d551abb441230973941bf93769168c93 /editeng | |
parent | 0d8253bc17cb5476fb558c0e17f5422d76f3e3db (diff) |
fdo#74363: fix auto correct of initial capitals on start of first para
The GetPrevPara() method apparently has to return 0 when there is no
previous paragraph.
(regression from ac85b6cff11d193f5f71d11b1f3cc1c474653f59)
Change-Id: I09a3e1d3a3adb33562e4e03c0755447047cbd433
(cherry picked from commit ebd0d0056d89a6a69d2cb75e28758132cb5c236b)
Reviewed-on: https://gerrit.libreoffice.org/7940
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'editeng')
-rw-r--r-- | editeng/qa/unit/core-test.cxx | 4 | ||||
-rw-r--r-- | editeng/source/editeng/edtspell.cxx | 8 | ||||
-rw-r--r-- | editeng/source/editeng/edtspell.hxx | 2 | ||||
-rw-r--r-- | editeng/source/misc/svxacorr.cxx | 6 |
4 files changed, 10 insertions, 10 deletions
diff --git a/editeng/qa/unit/core-test.cxx b/editeng/qa/unit/core-test.cxx index 053e6476912e..338a6cb7b95e 100644 --- a/editeng/qa/unit/core-test.cxx +++ b/editeng/qa/unit/core-test.cxx @@ -267,10 +267,10 @@ private: //fprintf(stderr, "TestAutoCorrDoc::SetINetAttr\n"); return true; } - virtual OUString GetPrevPara( sal_Bool ) + virtual OUString const* GetPrevPara(bool) { //fprintf(stderr, "TestAutoCorrDoc::GetPrevPara\n"); - return OUString(); + return 0; } virtual bool ChgAutoCorrWord( sal_Int32& rSttPos, sal_Int32 nEndPos, SvxAutoCorrect& rACorrect, diff --git a/editeng/source/editeng/edtspell.cxx b/editeng/source/editeng/edtspell.cxx index 68628f77e081..413435d86b11 100644 --- a/editeng/source/editeng/edtspell.cxx +++ b/editeng/source/editeng/edtspell.cxx @@ -691,7 +691,7 @@ sal_Bool EdtAutoCorrDoc::SetINetAttr( sal_uInt16 nStt, sal_uInt16 nEnd, return true; } -OUString EdtAutoCorrDoc::GetPrevPara( sal_Bool ) +OUString const* EdtAutoCorrDoc::GetPrevPara(bool const) { // Return previous paragraph, so that it can be determined, // whether the current word is at the beginning of a sentence. @@ -714,16 +714,16 @@ OUString EdtAutoCorrDoc::GetPrevPara( sal_Bool ) bBullet = true; } if ( bBullet ) - return OUString(); + return 0; for ( sal_Int32 n = nPos; n; ) { n--; ContentNode* pNode = rNodes[n]; if ( pNode->Len() ) - return pNode->GetString(); + return & pNode->GetString(); } - return OUString(); + return 0; } diff --git a/editeng/source/editeng/edtspell.hxx b/editeng/source/editeng/edtspell.hxx index 21d18bbafac9..4f1177486abe 100644 --- a/editeng/source/editeng/edtspell.hxx +++ b/editeng/source/editeng/edtspell.hxx @@ -147,7 +147,7 @@ public: virtual sal_Bool SetAttr( sal_uInt16 nStt, sal_uInt16 nEnd, sal_uInt16 nSlotId, SfxPoolItem& ); virtual sal_Bool SetINetAttr( sal_uInt16 nStt, sal_uInt16 nEnd, const OUString& rURL ); - virtual OUString GetPrevPara( sal_Bool bAtNormalPos ); + virtual OUString const* GetPrevPara(bool bAtNormalPos) SAL_OVERRIDE; virtual bool ChgAutoCorrWord( sal_Int32& rSttPos, sal_Int32 nEndPos, SvxAutoCorrect& rACorrect, OUString* pPara ); diff --git a/editeng/source/misc/svxacorr.cxx b/editeng/source/misc/svxacorr.cxx index 83a470710727..667f5614cb6d 100644 --- a/editeng/source/misc/svxacorr.cxx +++ b/editeng/source/misc/svxacorr.cxx @@ -873,8 +873,8 @@ sal_Bool SvxAutoCorrect::FnCptlSttSntnc( SvxAutoCorrDoc& rDoc, { // Check out the previous paragraph, if it exists. // If so, then check to paragraph separator at the end. - OUString aPrevPara = rDoc.GetPrevPara( bNormalPos ); - if( !aPrevPara.isEmpty() ) + OUString const*const pPrevPara = rDoc.GetPrevPara(bNormalPos); + if (!pPrevPara) { // valid separator -> replace OUString sChar( *pWordStt ); @@ -883,7 +883,7 @@ sal_Bool SvxAutoCorrect::FnCptlSttSntnc( SvxAutoCorrDoc& rDoc, rDoc.ReplaceRange( xub_StrLen( pWordStt - pStart ), 1, sChar ); } - aText = aPrevPara; + aText = *pPrevPara; bAtStart = sal_False; pStart = aText.getStr(); pStr = pStart + aText.getLength(); |