[Libreoffice-commits] core.git: 2 commits - svtools/source

Caolán McNamara caolanm at redhat.com
Tue Apr 16 05:47:36 PDT 2013


 svtools/source/edit/editsyntaxhighlighter.cxx |   50 ++++++++++++++------------
 1 file changed, 27 insertions(+), 23 deletions(-)

New commits:
commit 5358b9ba4ffa8667192b11bbb654fcdbcd463e7a
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Apr 16 13:46:56 2013 +0100

    UniString->OUString
    
    Change-Id: I217944d40ed7cd3a2fca4ad0d61729ff5d94ed96

diff --git a/svtools/source/edit/editsyntaxhighlighter.cxx b/svtools/source/edit/editsyntaxhighlighter.cxx
index 3f1cd8d..33e96d9 100644
--- a/svtools/source/edit/editsyntaxhighlighter.cxx
+++ b/svtools/source/edit/editsyntaxhighlighter.cxx
@@ -48,68 +48,68 @@ void MultiLineEditSyntaxHighlight::SetText(const OUString& rNewText)
     UpdateData();
 }
 
-void MultiLineEditSyntaxHighlight::DoBracketHilight(sal_uInt16 aKey)
+void MultiLineEditSyntaxHighlight::DoBracketHilight(sal_uInt16 nKey)
 {
     TextSelection aCurrentPos = GetTextView()->GetSelection();
-    xub_StrLen aStartPos  = aCurrentPos.GetStart().GetIndex();
+    xub_StrLen nStartPos = aCurrentPos.GetStart().GetIndex();
     sal_uLong nStartPara = aCurrentPos.GetStart().GetPara();
-    sal_uInt16 aCount = 0;
-    int aChar = -1;
+    sal_uInt16 nCount = 0;
+    int nChar = -1;
 
-    switch (aKey)
+    switch (nKey)
     {
         case '\'':  // no break
         case '"':
         {
-            aChar = aKey;
+            nChar = nKey;
             break;
         }
         case '}' :
         {
-            aChar = '{';
+            nChar = '{';
             break;
         }
         case ')':
         {
-            aChar = '(';
+            nChar = '(';
             break;
         }
         case ']':
         {
-            aChar = '[';
+            nChar = '[';
             break;
         }
     }
 
-    if (aChar != -1)
+    if (nChar != -1)
     {
-        for (long aPara =nStartPara; aPara>=0;--aPara)
+        for (long nPara = nStartPara; nPara>=0; --nPara)
         {
-            if ( aStartPos == 0 )
+            if (nStartPos == 0)
                 continue;
 
-            String aLine( GetTextEngine()->GetText( aPara ) );
+            OUString aLine( GetTextEngine()->GetText( nPara ) );
 
-            if (aLine.Len() == 0)
+            if (aLine.isEmpty())
                 continue;
 
-            for (sal_uInt16 i = ((unsigned long)aPara==nStartPara) ? aStartPos-1 : (sal_uInt16)(aLine.Len()-1); i>0; --i)
+            for (sal_Int32 i = ((sal_uLong)nPara==nStartPara) ? nStartPos-1 : aLine.getLength()-1; i>0; --i)
             {
-                if (aLine.GetChar(i)==aChar)
+                if (aLine[i] == nChar)
                 {
-                    if (!aCount)
+                    if (!nCount)
                     {
-                        GetTextEngine()->SetAttrib( TextAttribFontWeight( WEIGHT_ULTRABOLD ), aPara, i, i+1, sal_True );
-                        GetTextEngine()->SetAttrib( TextAttribFontColor( Color(0,0,0) ), aPara, i, i+1, sal_True );
-                        GetTextEngine()->SetAttrib( TextAttribFontWeight( WEIGHT_ULTRABOLD ), nStartPara, aStartPos, aStartPos, sal_True );
-                        GetTextEngine()->SetAttrib( TextAttribFontColor( Color(0,0,0) ), nStartPara, aStartPos, aStartPos, sal_True );
+                        GetTextEngine()->SetAttrib( TextAttribFontWeight( WEIGHT_ULTRABOLD ), nPara, i, i+1, sal_True );
+                        GetTextEngine()->SetAttrib( TextAttribFontColor( Color(0,0,0) ), nPara, i, i+1, sal_True );
+                        GetTextEngine()->SetAttrib( TextAttribFontWeight( WEIGHT_ULTRABOLD ), nStartPara, nStartPos, nStartPos, sal_True );
+                        GetTextEngine()->SetAttrib( TextAttribFontColor( Color(0,0,0) ), nStartPara, nStartPos, nStartPos, sal_True );
                         return;
                     }
                     else
-                        aCount--;
+                        --nCount;
                 }
-                if (aLine.GetChar(i)==aKey)
-                    aCount++;
+                if (aLine[i] == nKey)
+                    ++nCount;
             }
         }
     }
commit 02917cb57e2c2e9fcab2db8f72960023f3e4edaf
Author: Caolán McNamara <caolanm at redhat.com>
Date:   Tue Apr 16 13:40:04 2013 +0100

    Resolves: fdo#47209 and rhbz#927223 syntax highlighter crash
    
    when trying to parse empty lines looking for the matching
    bracket
    
    Change-Id: I3961a3d0e804d136de286e21934c6ba5ab0496cf

diff --git a/svtools/source/edit/editsyntaxhighlighter.cxx b/svtools/source/edit/editsyntaxhighlighter.cxx
index 62a7a25..3f1cd8d 100644
--- a/svtools/source/edit/editsyntaxhighlighter.cxx
+++ b/svtools/source/edit/editsyntaxhighlighter.cxx
@@ -89,6 +89,10 @@ void MultiLineEditSyntaxHighlight::DoBracketHilight(sal_uInt16 aKey)
                 continue;
 
             String aLine( GetTextEngine()->GetText( aPara ) );
+
+            if (aLine.Len() == 0)
+                continue;
+
             for (sal_uInt16 i = ((unsigned long)aPara==nStartPara) ? aStartPos-1 : (sal_uInt16)(aLine.Len()-1); i>0; --i)
             {
                 if (aLine.GetChar(i)==aChar)


More information about the Libreoffice-commits mailing list