diff options
-rw-r--r-- | Source/SPDatabaseDocument.m | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/Source/SPDatabaseDocument.m b/Source/SPDatabaseDocument.m index 2581967c..6091ed3b 100644 --- a/Source/SPDatabaseDocument.m +++ b/Source/SPDatabaseDocument.m @@ -6534,8 +6534,11 @@ static int64_t SPDatabaseDocumentInstanceCounter = 0; if (processListController) [processListController close]; + // #2924: The connection controller doesn't retain its delegate (us), but it may outlive us (e.g. when running a bg thread) + [connectionController setDelegate:nil]; + SPClear(connectionController); + if (selectedTableName) SPClear(selectedTableName); - if (connectionController) SPClear(connectionController); if (processListController) SPClear(processListController); if (serverVariablesController) SPClear(serverVariablesController); if (mySQLConnection) SPClear(mySQLConnection); |