diff --git a/zathura/database-sqlite.c b/zathura/database-sqlite.c index c75a575..b744f72 100644 --- a/zathura/database-sqlite.c +++ b/zathura/database-sqlite.c @@ -184,6 +184,10 @@ sqlite_db_init(ZathuraSQLDatabase* db, const char* path) static const char SQL_FILEINFO_ALTER3[] = "ALTER TABLE fileinfo ADD COLUMN time TIMESTAMP;"; + /* update fileinfo table (part 4) */ + static const char SQL_FILEINFO_ALTER4[] = + "ALTER TABLE fileinfo ADD COLUMN zoom FLOAT;"; + /* update bookmark table */ static const char SQL_BOOKMARK_ALTER[] = "ALTER TABLE bookmarks ADD COLUMN hadj_ratio FLOAT;" @@ -234,6 +238,15 @@ sqlite_db_init(ZathuraSQLDatabase* db, const char* path) } } + ret1 = check_column(session, "fileinfo", "zoom", &res1); + + if (ret1 == true && res1 == false) { + girara_debug("old database table layout detected; updating ..."); + if (sqlite3_exec(session, SQL_FILEINFO_ALTER4, NULL, 0, NULL) != SQLITE_OK) { + girara_warning("failed to update database table layout"); + } + } + ret1 = check_column(session, "bookmarks", "hadj_ratio", &res1); ret2 = check_column(session, "bookmarks", "vadj_ratio", &res2);