mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-04-22 15:19:35 +02:00
SynEdit: prevent dangling pointer
git-svn-id: trunk@47146 -
This commit is contained in:
parent
0a55b11a3e
commit
2006ddcda1
@ -1756,14 +1756,16 @@ procedure TSynCustomHighlighter.DetachFromLines(Lines: TSynEditStringsBase);
|
||||
var
|
||||
r: TSynHighlighterRangeList;
|
||||
begin
|
||||
//if Lines = CurrentLines then
|
||||
// CurrentLines := nil;
|
||||
r := TSynHighlighterRangeList(Lines.Ranges[GetRangeIdentifier]);
|
||||
if not assigned(r) then exit;
|
||||
r.DecRefCount;
|
||||
BeforeDetachedFromRangeList(r); // RefCount already decreased
|
||||
if r.RefCount = 0 then begin
|
||||
Lines.Ranges[GetRangeIdentifier] := nil;
|
||||
if FCurrentRanges = r then begin
|
||||
FCurrentRanges := nil;
|
||||
FCurrentLines := nil;
|
||||
end;
|
||||
r.Free;
|
||||
end;
|
||||
FKnownLines.Remove(Lines);
|
||||
|
Loading…
Reference in New Issue
Block a user