SynEdit: win, IME Handler: fix reference to freed object / leak. Issue #0027714

git-svn-id: trunk@48470 -
This commit is contained in:
martin 2015-03-23 23:02:04 +00:00
parent e36c3eb12f
commit 875cfefd74
2 changed files with 7 additions and 3 deletions

View File

@ -464,7 +464,11 @@ begin
TCustomSynEdit(FriendEdit).UnregisterBeforeMouseDownHandler(@DoOnMouse);
TCustomSynEdit(FriendEdit).UnregisterCommandHandler(@DoOnCommand);
TCustomSynEdit(FriendEdit).UnRegisterStatusChangedHandler(@DoStatusChanged);
TSynEditMarkupManager(MarkupMgr).RemoveMarkUp(FImeMarkupSelection);
TSynEditMarkupManager(MarkupMgr).RemoveMarkUp(FImeMarkupSelection2);
FreeAndNil(FImeMarkupSelection);
FreeAndNil(FImeMarkupSelection2);
FreeAndNil(FImeBlockSelection);
FreeAndNil(FImeBlockSelection2);
inherited Destroy;

View File

@ -2419,6 +2419,9 @@ begin
FreeAndNil(FRightGutterArea);
FreeAndNil(FTextArea);
FreeAndNil(fTSearch);
{$IFDEF WinIME}
FreeAndNil(FImeHandler);
{$ENDIF}
FreeAndNil(fMarkupManager);
FreeAndNil(fBookMarkOpt);
FreeAndNil(fKeyStrokes);
@ -2431,9 +2434,6 @@ begin
FreeAndNil(FRightGutter);
FreeAndNil(FPaintLineColor);
FreeAndNil(FPaintLineColor2);
{$IFDEF WinIME}
FreeAndNil(FImeHandler);
{$ENDIF}
FreeAndNil(fTextDrawer);
FreeAndNil(fFontDummy);
DestroyMarkList; // before detach from FLines