svx/source/dialog/fntctrl.cxx                    |    4 +++-
 svx/source/styles/CommonStylePreviewRenderer.cxx |    4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

New commits:
commit 85f161ac76a07bcd1dd2080e4bda8f11a600262d
Author:     Khaled Hosny <kha...@aliftype.com>
AuthorDate: Fri Dec 30 18:56:41 2022 +0200
Commit:     Adolfo Jayme Barrientos <fit...@ubuntu.com>
CommitDate: Fri Dec 30 21:36:00 2022 +0000

    tdf#152737: Fix off-by-one errors
    
    Regressions from:
    
    commit 718af940435ae9d2ac90374e5880ecb38e96252c
    Author: Khaled Hosny <kha...@aliftype.com>
    Date:   Fri Dec 16 00:10:34 2022 +0200
    
        tdf#152533: Improve script handling in font preview
    
    and:
    
    commit bfecacb2487ba9470600e6f64056d9b1816ee96b
    Author: Khaled Hosny <kha...@aliftype.com>
    Date:   Thu Dec 15 22:51:54 2022 +0200
    
        tdf#152460: Improve script handling in style previews
    
    Change-Id: I7b12f5accbd65459d724676efb7bec947a7faaa0
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144880
    Tested-by: Jenkins
    Reviewed-by: خالد حسني <kha...@aliftype.com>
    (cherry picked from commit 95f0dc2dc74401a097105fcfe745aba3e571d9c4)
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/144898
    Reviewed-by: Adolfo Jayme Barrientos <fit...@ubuntu.com>

diff --git a/svx/source/dialog/fntctrl.cxx b/svx/source/dialog/fntctrl.cxx
index 0712bbe92496..de39993061fd 100644
--- a/svx/source/dialog/fntctrl.cxx
+++ b/svx/source/dialog/fntctrl.cxx
@@ -250,7 +250,9 @@ void FontPrevWin_Impl::CheckScript()
     for (sal_Int32 i = 1; i <= maScriptText.getLength(); i++)
     {
         auto aNextScript = aEditEngine.GetScriptType({ 0, i, 0, i });
-        if (aNextScript != aScript || i == maScriptText.getLength())
+        if (aNextScript != aScript)
+            maScriptChanges.emplace_back(aScript, i - 1);
+        else if (i == maScriptText.getLength())
             maScriptChanges.emplace_back(aScript, i);
         aScript = aNextScript;
     }
diff --git a/svx/source/styles/CommonStylePreviewRenderer.cxx 
b/svx/source/styles/CommonStylePreviewRenderer.cxx
index 9ddf3cf15017..0ca34abe9a36 100644
--- a/svx/source/styles/CommonStylePreviewRenderer.cxx
+++ b/svx/source/styles/CommonStylePreviewRenderer.cxx
@@ -418,7 +418,9 @@ void CommonStylePreviewRenderer::CheckScript()
     for (sal_Int32 i = 1; i <= maScriptText.getLength(); i++)
     {
         auto aNextScript = aEditEngine.GetScriptType({ 0, i, 0, i });
-        if (aNextScript != aScript || i == maScriptText.getLength())
+        if (aNextScript != aScript)
+            maScriptChanges.emplace_back(aScript, i - 1);
+        else if (i == maScriptText.getLength())
             maScriptChanges.emplace_back(aScript, i);
         aScript = aNextScript;
     }

Reply via email to