summaryrefslogtreecommitdiff
path: root/lib/db.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/db.c')
-rw-r--r--lib/db.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/lib/db.c b/lib/db.c
index 7b50bcd..2dbca80 100644
--- a/lib/db.c
+++ b/lib/db.c
@@ -734,15 +734,18 @@ int cDbTable::init(int allowAlter)
// check/create table ...
- if (exist() && allowAlter)
- validateStructure(allowAlter);
+ if (allowAlter)
+ {
+ if (exist())
+ validateStructure(allowAlter);
- if (createTable() != success)
- return fail;
+ if (!exist() && createTable() != success)
+ return fail;
- // check/create indices
+ // check/create indices
- createIndices();
+ createIndices();
+ }
// ------------------------------
// prepare BASIC statements