[Midnightbsd-cvs] src [7647] stable/0.8/lib/libmport: set database version on creation
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Jul 30 10:15:25 EDT 2016
Revision: 7647
http://svnweb.midnightbsd.org/src/?rev=7647
Author: laffer1
Date: 2016-07-30 10:15:24 -0400 (Sat, 30 Jul 2016)
Log Message:
-----------
set database version on creation
Modified Paths:
--------------
stable/0.8/lib/libmport/bundle_read.c
stable/0.8/lib/libmport/db.c
stable/0.8/lib/libmport/instance.c
Modified: stable/0.8/lib/libmport/bundle_read.c
===================================================================
--- stable/0.8/lib/libmport/bundle_read.c 2016-07-29 02:53:50 UTC (rev 7646)
+++ stable/0.8/lib/libmport/bundle_read.c 2016-07-30 14:15:24 UTC (rev 7647)
@@ -52,12 +52,15 @@
*/
int mport_bundle_read_init(mportBundleRead *bundle, const char *filename)
{
- if ((bundle->filename = strdup(filename)) == NULL)
- RETURN_ERROR(MPORT_ERR_FATAL, "Couldn't dup filename");
+ if (filename == NULL)
+ RETURN_ERROR(MPORT_ERR_FATAL, "Filename is null");
+
+ if ((bundle->filename = strdup(filename)) == NULL) {
+ RETURN_ERROR(MPORT_ERR_FATAL, "Couldn't dup filename");
+ }
if ((bundle->archive = archive_read_new()) == NULL)
- RETURN_ERROR(MPORT_ERR_FATAL, "Couldn't dup filename");
-
+ RETURN_ERROR(MPORT_ERR_FATAL, "Couldn't initialize archive read");
if (archive_read_support_format_tar(bundle->archive) != ARCHIVE_OK)
RETURN_ERROR(MPORT_ERR_FATAL, archive_error_string(bundle->archive));
Modified: stable/0.8/lib/libmport/db.c
===================================================================
--- stable/0.8/lib/libmport/db.c 2016-07-29 02:53:50 UTC (rev 7646)
+++ stable/0.8/lib/libmport/db.c 2016-07-30 14:15:24 UTC (rev 7647)
@@ -287,5 +287,7 @@
RUN_SQL(db, "CREATE TABLE IF NOT EXISTS settings (name text NOT NULL, val text NOT NULL)");
RUN_SQL(db, "CREATE INDEX IF NOT EXISTS settings_name ON settings (name)");
+ mport_set_database_version(db);
+
return (MPORT_OK);
}
Modified: stable/0.8/lib/libmport/instance.c
===================================================================
--- stable/0.8/lib/libmport/instance.c 2016-07-29 02:53:50 UTC (rev 7646)
+++ stable/0.8/lib/libmport/instance.c 2016-07-30 14:15:24 UTC (rev 7647)
@@ -100,13 +100,15 @@
mport->progress_free_cb = &mport_default_progress_free_cb;
mport->confirm_cb = &mport_default_confirm_cb;
- mport_upgrade_master_schema(mport->db, mport_get_database_version(mport->db));
+ int db_version = mport_get_database_version(mport->db);
+ fprintf(stderr, "db version is %d", db_version);
+ if (db_version < 1) {
+ /* new, create tables */
+ mport_generate_master_schema(mport->db);
+ db_version = mport_get_database_version(mport->db);
+ }
- if (MPORT_MASTER_VERSION == mport_get_database_version(mport->db))
- return (MPORT_OK);
-
- /* create tables */
- return mport_generate_master_schema(mport->db);
+ return mport_upgrade_master_schema(mport->db, db_version);
}
/**
More information about the Midnightbsd-cvs
mailing list