|
Lines 63-78
void MainWindow::init_database() {
|
Link Here
|
|---|
|
if (dbenv) return; // already initialized.... | if (dbenv) return; // already initialized.... |
try { | try { |
global_tid = NULL; | global_tid = NULL; |
|
|
dbenv = new DbEnv(0); | dbenv = new DbEnv(0); |
|
#if DB_VERSION_MINOR < 3 |
dbenv->set_errcall(&MainWindow::dberr); | dbenv->set_errcall(&MainWindow::dberr); |
|
#else |
|
dbenv->set_errcall(&MainWindow::dberrEnv); |
|
#endif |
dbenv->open(QFile::encodeName(baseDir), DB_RECOVER | DB_INIT_TXN | \ | dbenv->open(QFile::encodeName(baseDir), DB_RECOVER | DB_INIT_TXN | \ |
DB_INIT_MPOOL | DB_INIT_LOG | DB_INIT_LOCK | \ | DB_INIT_MPOOL | DB_INIT_LOG | DB_INIT_LOCK | \ |
DB_CREATE | DB_PRIVATE , 0600 ); | DB_CREATE | DB_PRIVATE , 0600 ); |
|
|
dbenv->txn_begin(NULL, &global_tid, 0); | dbenv->txn_begin(NULL, &global_tid, 0); |
#ifndef DB_AUTO_COMMIT | #ifndef DB_AUTO_COMMIT |
#define DB_AUTO_COMMIT 0 | #define DB_AUTO_COMMIT 0 |
#endif | #endif |
dbenv->set_flags(DB_AUTO_COMMIT,1); | dbenv->set_flags(DB_AUTO_COMMIT,1); |
|
|
} | } |
catch (DbException &err) { | catch (DbException &err) { |
QString e = err.what(); | QString e = err.what(); |