summaryrefslogtreecommitdiffstats
path: root/kexi/main/keximainwindowimpl.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'kexi/main/keximainwindowimpl.cpp')
-rw-r--r--kexi/main/keximainwindowimpl.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/kexi/main/keximainwindowimpl.cpp b/kexi/main/keximainwindowimpl.cpp
index 5e39ab13a..f6be589a4 100644
--- a/kexi/main/keximainwindowimpl.cpp
+++ b/kexi/main/keximainwindowimpl.cpp
@@ -4203,8 +4203,10 @@ void KexiMainWindowImpl::slotToolsCompactDatabase()
data = new KexiProjectData(*d->prj->data()); // a copy
drv = d->prj->dbConnection()->driver();
const tristate res = closeProject();
- if (~res || !res)
+ if (~res || !res) {
+ delete data;
return;
+ }
}
if (!drv->adminTools().vacuum(*data->connectionData(), data->databaseName())) {
@@ -4212,10 +4214,9 @@ void KexiMainWindowImpl::slotToolsCompactDatabase()
showErrorMessage( &drv->adminTools() );
}
- if (data && projectWasOpened) {
+ if (projectWasOpened)
openProject(*data);
- delete data;
- }
+ delete data;
}
tristate KexiMainWindowImpl::showProjectMigrationWizard(