SynEdit Folding: Fixed Access to random memory / Bug #0012769

git-svn-id: trunk@17734 -
This commit is contained in:
martin 2008-12-09 00:46:49 +00:00
parent dfa6ac485e
commit 5f91ba3d20

View File

@ -512,6 +512,7 @@ begin
Clear;
if fNestedNodesTree <> nil then begin
fNestedNodesTree.fRoot := nil; //was freed in self.Clear
fNestedNodesTree.fNestParent := nil; // Or Destroy will access invalid memory
fNestedNodesTree.Free;
end;
inherited Destroy;
@ -1372,7 +1373,7 @@ begin
if fNestedNodesTree = nil then fNestedNodesTree := TSynTextFoldAVLTree.Create;
Result := fNestedNodesTree;
Result.fRoot := ANode.Nested;
Result.fNestParent := ANode;
Result.fNestParent := ANode; // TODO: this is dangerous, this is never cleaned up, even if ANode is Destroyed
Result.fRootOffset := aOffset;
end;