From d14d8e01f71448cd6b89a594cfb2e4bc7c4712f1 Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Sun, 20 Dec 2009 09:37:36 +0000 Subject: [PATCH] Database node was not removed after DROP DATABASE action. Fixes issue #1474. Described access violation unreproducible here any longer, probably fixed earlier. --- source/main.pas | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/source/main.pas b/source/main.pas index 9fc93272..1b9a8097 100644 --- a/source/main.pas +++ b/source/main.pas @@ -2154,6 +2154,7 @@ var msg, activeDB : WideString; InDBTree: Boolean; Act: TAction; + Node: PVirtualNode; procedure DoDrop(Kind: String; List: TWideStringlist; MultiDrops: Boolean); var @@ -2200,9 +2201,11 @@ begin Abort; try Connection.Query('DROP DATABASE ' + mask(activeDB)); - DBtree.FocusedNode := DBtree.GetFirst; - DBTree.Selected[DBtree.FocusedNode] := True; + Node := DBTree.FocusedNode; + SelectNode(DBTree, DBtree.GetFirst); Connection.ClearDbObjects(activeDB); + FreeAndNil(AllDatabases); + DBTree.DeleteNode(Node); RefreshTree(False); except on E:Exception do