Jinoh Kang : riched20: Add back-reference to outer ME_Run from struct re_object.
Module: wine Branch: master Commit: 05796c4e2a4acb91e6035c536b4d0e1f7e16896d URL: https://source.winehq.org/git/wine.git/?a=commit;h=05796c4e2a4acb91e6035c536... Author: Jinoh Kang <jinoh.kang.kr(a)gmail.com> Date: Mon Mar 21 04:37:55 2022 +0900 riched20: Add back-reference to outer ME_Run from struct re_object. Signed-off-by: Jinoh Kang <jinoh.kang.kr(a)gmail.com> Signed-off-by: Huw Davies <huw(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/riched20/caret.c | 5 +++-- dlls/riched20/editstr.h | 2 ++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/dlls/riched20/caret.c b/dlls/riched20/caret.c index 6d32776e3d2..c8658098e18 100644 --- a/dlls/riched20/caret.c +++ b/dlls/riched20/caret.c @@ -442,7 +442,7 @@ BOOL ME_DeleteTextAtCursor(ME_TextEditor *editor, int nCursor, int nChars) nChars, FALSE); } -static struct re_object* create_re_object(const REOBJECT *reo) +static struct re_object* create_re_object(const REOBJECT *reo, ME_Run *run) { struct re_object *reobj = heap_alloc(sizeof(*reobj)); @@ -452,6 +452,7 @@ static struct re_object* create_re_object(const REOBJECT *reo) return NULL; } ME_CopyReObject(&reobj->obj, reo, REO_GETOBJ_ALL_INTERFACES); + reobj->run = run; return reobj; } @@ -477,7 +478,7 @@ void editor_insert_oleobj(ME_TextEditor *editor, const REOBJECT *reo) run = run_insert( editor, cursor, style, &space, 1, MERF_GRAPHICS ); - run->reobj = create_re_object( reo ); + run->reobj = create_re_object( reo, run ); prev = run; while ((prev = run_prev_all_paras( prev ))) diff --git a/dlls/riched20/editstr.h b/dlls/riched20/editstr.h index 889795de189..3b166234f23 100644 --- a/dlls/riched20/editstr.h +++ b/dlls/riched20/editstr.h @@ -147,11 +147,13 @@ typedef enum { /******************************** structures *************************/ struct tagME_DisplayItem; +struct tagME_Run; struct re_object { struct list entry; REOBJECT obj; + struct tagME_Run *run; /* ptr to the reobj's run */ }; typedef struct tagME_Run
participants (1)
-
Alexandre Julliard