You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Remove use of SQLITE_EXTRA_INIT and SQLITE_EXTRA_SHUTDOWN
- Split sqlite3mc_initialize into 2 parts:
1) initialization of cipher schemes,
2) loading builtin extensions automatically on opening a database
- Add SQLite patch to call sqlite3mc_initialize directly from within SQLite's guarded initialization context to avoid race condition
- Add SQLite patch to call sqlite3mc_shutdown directly from sqlite3_shutdown
| sed '/^ sqlite3GlobalConfig.szPage, sqlite3GlobalConfig.nPage);/a \ int sqlite3mc_initialize(const char*);\n rc = sqlite3mc_initialize(0);' \
31
+
| sed '/^ sqlite3_os_end();/i \ void sqlite3mc_shutdown(void);\n sqlite3mc_shutdown();' \
32
+
| sed '/^ SQLITE_EXTRA_AUTOEXT,/!{p;d;};n;a \ sqlite3mc_builtin_extensions,' \
30
33
| sed '/Lock the source database handle./i \ \/\* Check whether databases are compatible with backup \*\/\n if (!sqlite3mcIsBackupSupported(pSrcDb, zSrcDb, pDestDb, zDestDb)){\n sqlite3ErrorWithMsg(pDestDb, SQLITE_ERROR, \"backup is not supported with incompatible source and target databases\");\n return NULL;\n }\n' \
31
34
| sed '/nRes = sqlite3BtreeGetRequestedReserve(pMain)/a \\n \/\* A VACUUM cannot change the pagesize of an encrypted database. \*\/\n if( db->nextPagesize ){\n extern void sqlite3mcCodecGetKey(sqlite3*, int, void**, int*);\n int nKey;\n char *zKey;\n sqlite3mcCodecGetKey(db, iDb, (void**)&zKey, &nKey);\n if( nKey ) db->nextPagesize = 0;\n }' \
0 commit comments