Huw Davies : riched20: Don't return the diTextStart paragraph from para_prev().

Alexandre Julliard julliard at winehq.org
Wed Oct 14 15:37:21 CDT 2020


Module: wine
Branch: master
Commit: bfac43798bbe3b74b6eeced4251e7a81fe58043e
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=bfac43798bbe3b74b6eeced4251e7a81fe58043e

Author: Huw Davies <huw at codeweavers.com>
Date:   Wed Oct 14 11:17:16 2020 +0100

riched20: Don't return the diTextStart paragraph from para_prev().

Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/riched20/caret.c | 6 ++----
 dlls/riched20/para.c  | 2 +-
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/dlls/riched20/caret.c b/dlls/riched20/caret.c
index 5f7d52aa4c..c56e5961f7 100644
--- a/dlls/riched20/caret.c
+++ b/dlls/riched20/caret.c
@@ -774,12 +774,10 @@ ME_MoveCursorWords(ME_TextEditor *editor, ME_Cursor *cursor, int nRelOfs)
         {
           para = run->para;
           /* Skip empty start of table row paragraph */
-          if (para_prev( para )->nFlags & MEPF_ROWSTART)
+          if (para_prev( para ) && para_prev( para )->nFlags & MEPF_ROWSTART)
             para = para_prev( para );
           /* Paragraph breaks are treated as separate words */
-          if (para_get_di( para_prev( para ) )->type == diTextStart)
-            return FALSE;
-
+          if (!para_prev( para )) return FALSE;
           para = para_prev( para );
           run = para_end_run( para );
         }
diff --git a/dlls/riched20/para.c b/dlls/riched20/para.c
index 99ce170663..431f89faed 100644
--- a/dlls/riched20/para.c
+++ b/dlls/riched20/para.c
@@ -64,7 +64,7 @@ ME_Paragraph *para_next( ME_Paragraph *para )
 
 ME_Paragraph *para_prev( ME_Paragraph *para )
 {
-    if (para->prev_para) return &para->prev_para->member.para;
+    if (para->prev_para && para->prev_para->type == diParagraph) return &para->prev_para->member.para;
     return NULL;
 }
 




More information about the wine-cvs mailing list