mirror of
https://github.com/isar/rusqlite.git
synced 2025-01-19 22:00:50 +08:00
Upgrade SQLite bundled version to 3.39.3
This commit is contained in:
parent
2dd11143c9
commit
c5b63f67f0
538
libsqlite3-sys/sqlite3/bindgen_bundled_version.rs
vendored
538
libsqlite3-sys/sqlite3/bindgen_bundled_version.rs
vendored
@ -1,9 +1,9 @@
|
||||
/* automatically generated by rust-bindgen 0.60.1 */
|
||||
|
||||
pub const SQLITE_VERSION: &[u8; 7usize] = b"3.39.2\0";
|
||||
pub const SQLITE_VERSION_NUMBER: i32 = 3039002;
|
||||
pub const SQLITE_VERSION: &[u8; 7usize] = b"3.39.3\0";
|
||||
pub const SQLITE_VERSION_NUMBER: i32 = 3039003;
|
||||
pub const SQLITE_SOURCE_ID: &[u8; 85usize] =
|
||||
b"2022-07-21 15:24:47 698edb77537b67c41adc68f9b892db56bcf9a55e00371a61420f3ddd668e6603\0";
|
||||
b"2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8\0";
|
||||
pub const SQLITE_OK: i32 = 0;
|
||||
pub const SQLITE_ERROR: i32 = 1;
|
||||
pub const SQLITE_INTERNAL: i32 = 2;
|
||||
@ -454,6 +454,20 @@ pub const SQLITE_DESERIALIZE_READONLY: i32 = 4;
|
||||
pub const NOT_WITHIN: i32 = 0;
|
||||
pub const PARTLY_WITHIN: i32 = 1;
|
||||
pub const FULLY_WITHIN: i32 = 2;
|
||||
pub const __SQLITESESSION_H_: i32 = 1;
|
||||
pub const SQLITE_SESSION_OBJCONFIG_SIZE: i32 = 1;
|
||||
pub const SQLITE_CHANGESETSTART_INVERT: i32 = 2;
|
||||
pub const SQLITE_CHANGESETAPPLY_NOSAVEPOINT: i32 = 1;
|
||||
pub const SQLITE_CHANGESETAPPLY_INVERT: i32 = 2;
|
||||
pub const SQLITE_CHANGESET_DATA: i32 = 1;
|
||||
pub const SQLITE_CHANGESET_NOTFOUND: i32 = 2;
|
||||
pub const SQLITE_CHANGESET_CONFLICT: i32 = 3;
|
||||
pub const SQLITE_CHANGESET_CONSTRAINT: i32 = 4;
|
||||
pub const SQLITE_CHANGESET_FOREIGN_KEY: i32 = 5;
|
||||
pub const SQLITE_CHANGESET_OMIT: i32 = 0;
|
||||
pub const SQLITE_CHANGESET_REPLACE: i32 = 1;
|
||||
pub const SQLITE_CHANGESET_ABORT: i32 = 2;
|
||||
pub const SQLITE_SESSION_CONFIG_STRMSIZE: i32 = 1;
|
||||
pub const FTS5_TOKENIZE_QUERY: i32 = 1;
|
||||
pub const FTS5_TOKENIZE_PREFIX: i32 = 2;
|
||||
pub const FTS5_TOKENIZE_DOCUMENT: i32 = 4;
|
||||
@ -2704,6 +2718,46 @@ extern "C" {
|
||||
extern "C" {
|
||||
pub fn sqlite3_db_cacheflush(arg1: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_hook(
|
||||
db: *mut sqlite3,
|
||||
xPreUpdate: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
db: *mut sqlite3,
|
||||
op: ::std::os::raw::c_int,
|
||||
zDb: *const ::std::os::raw::c_char,
|
||||
zName: *const ::std::os::raw::c_char,
|
||||
iKey1: sqlite3_int64,
|
||||
iKey2: sqlite3_int64,
|
||||
),
|
||||
>,
|
||||
arg1: *mut ::std::os::raw::c_void,
|
||||
) -> *mut ::std::os::raw::c_void;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_old(
|
||||
arg1: *mut sqlite3,
|
||||
arg2: ::std::os::raw::c_int,
|
||||
arg3: *mut *mut sqlite3_value,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_count(arg1: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_depth(arg1: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_new(
|
||||
arg1: *mut sqlite3,
|
||||
arg2: ::std::os::raw::c_int,
|
||||
arg3: *mut *mut sqlite3_value,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_preupdate_blobwrite(arg1: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3_system_errno(arg1: *mut sqlite3) -> ::std::os::raw::c_int;
|
||||
}
|
||||
@ -2817,6 +2871,484 @@ pub struct sqlite3_rtree_query_info {
|
||||
}
|
||||
#[repr(C)]
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub struct sqlite3_session {
|
||||
_unused: [u8; 0],
|
||||
}
|
||||
#[repr(C)]
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub struct sqlite3_changeset_iter {
|
||||
_unused: [u8; 0],
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_create(
|
||||
db: *mut sqlite3,
|
||||
zDb: *const ::std::os::raw::c_char,
|
||||
ppSession: *mut *mut sqlite3_session,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_delete(pSession: *mut sqlite3_session);
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_object_config(
|
||||
arg1: *mut sqlite3_session,
|
||||
op: ::std::os::raw::c_int,
|
||||
pArg: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_enable(
|
||||
pSession: *mut sqlite3_session,
|
||||
bEnable: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_indirect(
|
||||
pSession: *mut sqlite3_session,
|
||||
bIndirect: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_attach(
|
||||
pSession: *mut sqlite3_session,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_table_filter(
|
||||
pSession: *mut sqlite3_session,
|
||||
xFilter: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
);
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_changeset(
|
||||
pSession: *mut sqlite3_session,
|
||||
pnChangeset: *mut ::std::os::raw::c_int,
|
||||
ppChangeset: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_changeset_size(pSession: *mut sqlite3_session) -> sqlite3_int64;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_diff(
|
||||
pSession: *mut sqlite3_session,
|
||||
zFromDb: *const ::std::os::raw::c_char,
|
||||
zTbl: *const ::std::os::raw::c_char,
|
||||
pzErrMsg: *mut *mut ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_patchset(
|
||||
pSession: *mut sqlite3_session,
|
||||
pnPatchset: *mut ::std::os::raw::c_int,
|
||||
ppPatchset: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_isempty(pSession: *mut sqlite3_session) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_memory_used(pSession: *mut sqlite3_session) -> sqlite3_int64;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_start(
|
||||
pp: *mut *mut sqlite3_changeset_iter,
|
||||
nChangeset: ::std::os::raw::c_int,
|
||||
pChangeset: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_start_v2(
|
||||
pp: *mut *mut sqlite3_changeset_iter,
|
||||
nChangeset: ::std::os::raw::c_int,
|
||||
pChangeset: *mut ::std::os::raw::c_void,
|
||||
flags: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_next(pIter: *mut sqlite3_changeset_iter) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_op(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
pzTab: *mut *const ::std::os::raw::c_char,
|
||||
pnCol: *mut ::std::os::raw::c_int,
|
||||
pOp: *mut ::std::os::raw::c_int,
|
||||
pbIndirect: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_pk(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
pabPK: *mut *mut ::std::os::raw::c_uchar,
|
||||
pnCol: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_old(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
iVal: ::std::os::raw::c_int,
|
||||
ppValue: *mut *mut sqlite3_value,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_new(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
iVal: ::std::os::raw::c_int,
|
||||
ppValue: *mut *mut sqlite3_value,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_conflict(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
iVal: ::std::os::raw::c_int,
|
||||
ppValue: *mut *mut sqlite3_value,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_fk_conflicts(
|
||||
pIter: *mut sqlite3_changeset_iter,
|
||||
pnOut: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_finalize(pIter: *mut sqlite3_changeset_iter) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_invert(
|
||||
nIn: ::std::os::raw::c_int,
|
||||
pIn: *const ::std::os::raw::c_void,
|
||||
pnOut: *mut ::std::os::raw::c_int,
|
||||
ppOut: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_concat(
|
||||
nA: ::std::os::raw::c_int,
|
||||
pA: *mut ::std::os::raw::c_void,
|
||||
nB: ::std::os::raw::c_int,
|
||||
pB: *mut ::std::os::raw::c_void,
|
||||
pnOut: *mut ::std::os::raw::c_int,
|
||||
ppOut: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
#[repr(C)]
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub struct sqlite3_changegroup {
|
||||
_unused: [u8; 0],
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_new(pp: *mut *mut sqlite3_changegroup) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_add(
|
||||
arg1: *mut sqlite3_changegroup,
|
||||
nData: ::std::os::raw::c_int,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_output(
|
||||
arg1: *mut sqlite3_changegroup,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
ppData: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_delete(arg1: *mut sqlite3_changegroup);
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_apply(
|
||||
db: *mut sqlite3,
|
||||
nChangeset: ::std::os::raw::c_int,
|
||||
pChangeset: *mut ::std::os::raw::c_void,
|
||||
xFilter: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
xConflict: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
eConflict: ::std::os::raw::c_int,
|
||||
p: *mut sqlite3_changeset_iter,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_apply_v2(
|
||||
db: *mut sqlite3,
|
||||
nChangeset: ::std::os::raw::c_int,
|
||||
pChangeset: *mut ::std::os::raw::c_void,
|
||||
xFilter: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
xConflict: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
eConflict: ::std::os::raw::c_int,
|
||||
p: *mut sqlite3_changeset_iter,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
ppRebase: *mut *mut ::std::os::raw::c_void,
|
||||
pnRebase: *mut ::std::os::raw::c_int,
|
||||
flags: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
#[repr(C)]
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub struct sqlite3_rebaser {
|
||||
_unused: [u8; 0],
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3rebaser_create(ppNew: *mut *mut sqlite3_rebaser) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3rebaser_configure(
|
||||
arg1: *mut sqlite3_rebaser,
|
||||
nRebase: ::std::os::raw::c_int,
|
||||
pRebase: *const ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3rebaser_rebase(
|
||||
arg1: *mut sqlite3_rebaser,
|
||||
nIn: ::std::os::raw::c_int,
|
||||
pIn: *const ::std::os::raw::c_void,
|
||||
pnOut: *mut ::std::os::raw::c_int,
|
||||
ppOut: *mut *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3rebaser_delete(p: *mut sqlite3_rebaser);
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_apply_strm(
|
||||
db: *mut sqlite3,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
xFilter: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
xConflict: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
eConflict: ::std::os::raw::c_int,
|
||||
p: *mut sqlite3_changeset_iter,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_apply_v2_strm(
|
||||
db: *mut sqlite3,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
xFilter: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
zTab: *const ::std::os::raw::c_char,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
xConflict: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
eConflict: ::std::os::raw::c_int,
|
||||
p: *mut sqlite3_changeset_iter,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pCtx: *mut ::std::os::raw::c_void,
|
||||
ppRebase: *mut *mut ::std::os::raw::c_void,
|
||||
pnRebase: *mut ::std::os::raw::c_int,
|
||||
flags: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_concat_strm(
|
||||
xInputA: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pInA: *mut ::std::os::raw::c_void,
|
||||
xInputB: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pInB: *mut ::std::os::raw::c_void,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_invert_strm(
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_start_strm(
|
||||
pp: *mut *mut sqlite3_changeset_iter,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changeset_start_v2_strm(
|
||||
pp: *mut *mut sqlite3_changeset_iter,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
flags: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_changeset_strm(
|
||||
pSession: *mut sqlite3_session,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_patchset_strm(
|
||||
pSession: *mut sqlite3_session,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_add_strm(
|
||||
arg1: *mut sqlite3_changegroup,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3changegroup_output_strm(
|
||||
arg1: *mut sqlite3_changegroup,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3rebaser_rebase_strm(
|
||||
pRebaser: *mut sqlite3_rebaser,
|
||||
xInput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
pData: *mut ::std::os::raw::c_void,
|
||||
pnData: *mut ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pIn: *mut ::std::os::raw::c_void,
|
||||
xOutput: ::std::option::Option<
|
||||
unsafe extern "C" fn(
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
pData: *const ::std::os::raw::c_void,
|
||||
nData: ::std::os::raw::c_int,
|
||||
) -> ::std::os::raw::c_int,
|
||||
>,
|
||||
pOut: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
extern "C" {
|
||||
pub fn sqlite3session_config(
|
||||
op: ::std::os::raw::c_int,
|
||||
pArg: *mut ::std::os::raw::c_void,
|
||||
) -> ::std::os::raw::c_int;
|
||||
}
|
||||
#[repr(C)]
|
||||
#[derive(Debug, Copy, Clone)]
|
||||
pub struct Fts5Context {
|
||||
_unused: [u8; 0],
|
||||
}
|
||||
|
126
libsqlite3-sys/sqlite3/sqlite3.c
vendored
126
libsqlite3-sys/sqlite3/sqlite3.c
vendored
@ -1,6 +1,6 @@
|
||||
/******************************************************************************
|
||||
** This file is an amalgamation of many separate C source files from SQLite
|
||||
** version 3.39.2. By combining all the individual C code files into this
|
||||
** version 3.39.3. By combining all the individual C code files into this
|
||||
** single large file, the entire code can be compiled as a single translation
|
||||
** unit. This allows many compilers to do optimizations that would not be
|
||||
** possible if the files were compiled separately. Performance improvements
|
||||
@ -452,9 +452,9 @@ extern "C" {
|
||||
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
|
||||
** [sqlite_version()] and [sqlite_source_id()].
|
||||
*/
|
||||
#define SQLITE_VERSION "3.39.2"
|
||||
#define SQLITE_VERSION_NUMBER 3039002
|
||||
#define SQLITE_SOURCE_ID "2022-07-21 15:24:47 698edb77537b67c41adc68f9b892db56bcf9a55e00371a61420f3ddd668e6603"
|
||||
#define SQLITE_VERSION "3.39.3"
|
||||
#define SQLITE_VERSION_NUMBER 3039003
|
||||
#define SQLITE_SOURCE_ID "2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8"
|
||||
|
||||
/*
|
||||
** CAPI3REF: Run-Time Library Version Numbers
|
||||
@ -13144,6 +13144,11 @@ struct fts5_api {
|
||||
/************** End of sqlite3.h *********************************************/
|
||||
/************** Continuing where we left off in sqliteInt.h ******************/
|
||||
|
||||
/*
|
||||
** Reuse the STATIC_LRU for mutex access to sqlite3_temp_directory.
|
||||
*/
|
||||
#define SQLITE_MUTEX_STATIC_TEMPDIR SQLITE_MUTEX_STATIC_VFS1
|
||||
|
||||
/*
|
||||
** Include the configuration header output by 'configure' if we're using the
|
||||
** autoconf-based build
|
||||
@ -29563,8 +29568,13 @@ SQLITE_PRIVATE void *sqlite3OomFault(sqlite3 *db){
|
||||
}
|
||||
DisableLookaside;
|
||||
if( db->pParse ){
|
||||
Parse *pParse;
|
||||
sqlite3ErrorMsg(db->pParse, "out of memory");
|
||||
db->pParse->rc = SQLITE_NOMEM_BKPT;
|
||||
for(pParse=db->pParse->pOuterParse; pParse; pParse = pParse->pOuterParse){
|
||||
pParse->nErr++;
|
||||
pParse->rc = SQLITE_NOMEM;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
@ -33459,7 +33469,7 @@ SQLITE_PRIVATE void sqlite3ErrorMsg(Parse *pParse, const char *zFormat, ...){
|
||||
va_list ap;
|
||||
sqlite3 *db = pParse->db;
|
||||
assert( db!=0 );
|
||||
assert( db->pParse==pParse );
|
||||
assert( db->pParse==pParse || db->pParse->pToplevel==pParse );
|
||||
db->errByteOffset = -2;
|
||||
va_start(ap, zFormat);
|
||||
zMsg = sqlite3VMPrintf(db, zFormat, ap);
|
||||
@ -41320,6 +41330,7 @@ static const char *unixTempFileDir(void){
|
||||
static int unixGetTempname(int nBuf, char *zBuf){
|
||||
const char *zDir;
|
||||
int iLimit = 0;
|
||||
int rc = SQLITE_OK;
|
||||
|
||||
/* It's odd to simulate an io-error here, but really this is just
|
||||
** using the io-error infrastructure to test that SQLite handles this
|
||||
@ -41328,18 +41339,26 @@ static int unixGetTempname(int nBuf, char *zBuf){
|
||||
zBuf[0] = 0;
|
||||
SimulateIOError( return SQLITE_IOERR );
|
||||
|
||||
sqlite3_mutex_enter(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
zDir = unixTempFileDir();
|
||||
if( zDir==0 ) return SQLITE_IOERR_GETTEMPPATH;
|
||||
do{
|
||||
u64 r;
|
||||
sqlite3_randomness(sizeof(r), &r);
|
||||
assert( nBuf>2 );
|
||||
zBuf[nBuf-2] = 0;
|
||||
sqlite3_snprintf(nBuf, zBuf, "%s/"SQLITE_TEMP_FILE_PREFIX"%llx%c",
|
||||
zDir, r, 0);
|
||||
if( zBuf[nBuf-2]!=0 || (iLimit++)>10 ) return SQLITE_ERROR;
|
||||
}while( osAccess(zBuf,0)==0 );
|
||||
return SQLITE_OK;
|
||||
if( zDir==0 ){
|
||||
rc = SQLITE_IOERR_GETTEMPPATH;
|
||||
}else{
|
||||
do{
|
||||
u64 r;
|
||||
sqlite3_randomness(sizeof(r), &r);
|
||||
assert( nBuf>2 );
|
||||
zBuf[nBuf-2] = 0;
|
||||
sqlite3_snprintf(nBuf, zBuf, "%s/"SQLITE_TEMP_FILE_PREFIX"%llx%c",
|
||||
zDir, r, 0);
|
||||
if( zBuf[nBuf-2]!=0 || (iLimit++)>10 ){
|
||||
rc = SQLITE_ERROR;
|
||||
break;
|
||||
}
|
||||
}while( osAccess(zBuf,0)==0 );
|
||||
}
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
return rc;
|
||||
}
|
||||
|
||||
#if SQLITE_ENABLE_LOCKING_STYLE && defined(__APPLE__)
|
||||
@ -45482,6 +45501,7 @@ SQLITE_API int sqlite3_win32_set_directory8(
|
||||
int rc = sqlite3_initialize();
|
||||
if( rc ) return rc;
|
||||
#endif
|
||||
sqlite3_mutex_enter(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
if( type==SQLITE_WIN32_DATA_DIRECTORY_TYPE ){
|
||||
ppDirectory = &sqlite3_data_directory;
|
||||
}else if( type==SQLITE_WIN32_TEMP_DIRECTORY_TYPE ){
|
||||
@ -45496,14 +45516,19 @@ SQLITE_API int sqlite3_win32_set_directory8(
|
||||
if( zValue && zValue[0] ){
|
||||
zCopy = sqlite3_mprintf("%s", zValue);
|
||||
if ( zCopy==0 ){
|
||||
return SQLITE_NOMEM_BKPT;
|
||||
rc = SQLITE_NOMEM_BKPT;
|
||||
goto set_directory8_done;
|
||||
}
|
||||
}
|
||||
sqlite3_free(*ppDirectory);
|
||||
*ppDirectory = zCopy;
|
||||
return SQLITE_OK;
|
||||
rc = SQLITE_OK;
|
||||
}else{
|
||||
rc = SQLITE_ERROR;
|
||||
}
|
||||
return SQLITE_ERROR;
|
||||
set_directory8_done:
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
return rc;
|
||||
}
|
||||
|
||||
/*
|
||||
@ -48277,6 +48302,18 @@ static int winMakeEndInDirSep(int nBuf, char *zBuf){
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
** If sqlite3_temp_directory is not, take the mutex and return true.
|
||||
**
|
||||
** If sqlite3_temp_directory is NULL, omit the mutex and return false.
|
||||
*/
|
||||
static int winTempDirDefined(void){
|
||||
sqlite3_mutex_enter(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
if( sqlite3_temp_directory!=0 ) return 1;
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
** Create a temporary file name and store the resulting pointer into pzBuf.
|
||||
** The pointer returned in pzBuf must be freed via sqlite3_free().
|
||||
@ -48313,20 +48350,23 @@ static int winGetTempname(sqlite3_vfs *pVfs, char **pzBuf){
|
||||
*/
|
||||
nDir = nMax - (nPre + 15);
|
||||
assert( nDir>0 );
|
||||
if( sqlite3_temp_directory ){
|
||||
if( winTempDirDefined() ){
|
||||
int nDirLen = sqlite3Strlen30(sqlite3_temp_directory);
|
||||
if( nDirLen>0 ){
|
||||
if( !winIsDirSep(sqlite3_temp_directory[nDirLen-1]) ){
|
||||
nDirLen++;
|
||||
}
|
||||
if( nDirLen>nDir ){
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
sqlite3_free(zBuf);
|
||||
OSTRACE(("TEMP-FILENAME rc=SQLITE_ERROR\n"));
|
||||
return winLogError(SQLITE_ERROR, 0, "winGetTempname1", 0);
|
||||
}
|
||||
sqlite3_snprintf(nMax, zBuf, "%s", sqlite3_temp_directory);
|
||||
}
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
}
|
||||
|
||||
#if defined(__CYGWIN__)
|
||||
else{
|
||||
static const char *azDirs[] = {
|
||||
@ -49115,7 +49155,7 @@ static BOOL winIsVerbatimPathname(
|
||||
** pathname into zOut[]. zOut[] will be at least pVfs->mxPathname
|
||||
** bytes in size.
|
||||
*/
|
||||
static int winFullPathname(
|
||||
static int winFullPathnameNoMutex(
|
||||
sqlite3_vfs *pVfs, /* Pointer to vfs object */
|
||||
const char *zRelative, /* Possibly relative input path */
|
||||
int nFull, /* Size of output buffer in bytes */
|
||||
@ -49294,6 +49334,19 @@ static int winFullPathname(
|
||||
}
|
||||
#endif
|
||||
}
|
||||
static int winFullPathname(
|
||||
sqlite3_vfs *pVfs, /* Pointer to vfs object */
|
||||
const char *zRelative, /* Possibly relative input path */
|
||||
int nFull, /* Size of output buffer in bytes */
|
||||
char *zFull /* Output buffer */
|
||||
){
|
||||
int rc;
|
||||
sqlite3_mutex *pMutex = sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR);
|
||||
sqlite3_mutex_enter(pMutex);
|
||||
rc = winFullPathnameNoMutex(pVfs, zRelative, nFull, zFull);
|
||||
sqlite3_mutex_leave(pMutex);
|
||||
return rc;
|
||||
}
|
||||
|
||||
#ifndef SQLITE_OMIT_LOAD_EXTENSION
|
||||
/*
|
||||
@ -59676,6 +59729,7 @@ static int pager_open_journal(Pager *pPager){
|
||||
if( rc!=SQLITE_OK ){
|
||||
sqlite3BitvecDestroy(pPager->pInJournal);
|
||||
pPager->pInJournal = 0;
|
||||
pPager->journalOff = 0;
|
||||
}else{
|
||||
assert( pPager->eState==PAGER_WRITER_LOCKED );
|
||||
pPager->eState = PAGER_WRITER_CACHEMOD;
|
||||
@ -61231,7 +61285,7 @@ SQLITE_PRIVATE int sqlite3PagerGetJournalMode(Pager *pPager){
|
||||
SQLITE_PRIVATE int sqlite3PagerOkToChangeJournalMode(Pager *pPager){
|
||||
assert( assert_pager_state(pPager) );
|
||||
if( pPager->eState>=PAGER_WRITER_CACHEMOD ) return 0;
|
||||
if( NEVER(isOpen(pPager->jfd) && pPager->journalOff>0) ) return 0;
|
||||
if( isOpen(pPager->jfd) && pPager->journalOff>0 ) return 0;
|
||||
return 1;
|
||||
}
|
||||
|
||||
@ -81035,6 +81089,7 @@ SQLITE_PRIVATE int sqlite3VdbeAddFunctionCall(
|
||||
addr = sqlite3VdbeAddOp4(v, eCallCtx ? OP_PureFunc : OP_Function,
|
||||
p1, p2, p3, (char*)pCtx, P4_FUNCCTX);
|
||||
sqlite3VdbeChangeP5(v, eCallCtx & NC_SelfRef);
|
||||
sqlite3MayAbort(pParse);
|
||||
return addr;
|
||||
}
|
||||
|
||||
@ -81370,6 +81425,7 @@ SQLITE_PRIVATE int sqlite3VdbeAssertMayAbort(Vdbe *v, int mayAbort){
|
||||
|| opcode==OP_VDestroy
|
||||
|| opcode==OP_VCreate
|
||||
|| opcode==OP_ParseSchema
|
||||
|| opcode==OP_Function || opcode==OP_PureFunc
|
||||
|| ((opcode==OP_Halt || opcode==OP_HaltIfNull)
|
||||
&& ((pOp->p1)!=SQLITE_OK && pOp->p2==OE_Abort))
|
||||
){
|
||||
@ -132704,6 +132760,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
**
|
||||
*/
|
||||
case PragTyp_TEMP_STORE_DIRECTORY: {
|
||||
sqlite3_mutex_enter(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
if( !zRight ){
|
||||
returnSingleText(v, sqlite3_temp_directory);
|
||||
}else{
|
||||
@ -132713,6 +132770,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
rc = sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res);
|
||||
if( rc!=SQLITE_OK || res==0 ){
|
||||
sqlite3ErrorMsg(pParse, "not a writable directory");
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
goto pragma_out;
|
||||
}
|
||||
}
|
||||
@ -132730,6 +132788,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
}
|
||||
#endif /* SQLITE_OMIT_WSD */
|
||||
}
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
break;
|
||||
}
|
||||
|
||||
@ -132748,6 +132807,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
**
|
||||
*/
|
||||
case PragTyp_DATA_STORE_DIRECTORY: {
|
||||
sqlite3_mutex_enter(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
if( !zRight ){
|
||||
returnSingleText(v, sqlite3_data_directory);
|
||||
}else{
|
||||
@ -132757,6 +132817,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
rc = sqlite3OsAccess(db->pVfs, zRight, SQLITE_ACCESS_READWRITE, &res);
|
||||
if( rc!=SQLITE_OK || res==0 ){
|
||||
sqlite3ErrorMsg(pParse, "not a writable directory");
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
goto pragma_out;
|
||||
}
|
||||
}
|
||||
@ -132768,6 +132829,7 @@ SQLITE_PRIVATE void sqlite3Pragma(
|
||||
}
|
||||
#endif /* SQLITE_OMIT_WSD */
|
||||
}
|
||||
sqlite3_mutex_leave(sqlite3MutexAlloc(SQLITE_MUTEX_STATIC_TEMPDIR));
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
@ -137213,7 +137275,7 @@ static void generateSortTail(
|
||||
if( addrOnce ) sqlite3VdbeJumpHere(v, addrOnce);
|
||||
addr = 1 + sqlite3VdbeAddOp2(v, OP_SorterSort, iTab, addrBreak);
|
||||
VdbeCoverage(v);
|
||||
codeOffset(v, p->iOffset, addrContinue);
|
||||
assert( p->iLimit==0 && p->iOffset==0 );
|
||||
sqlite3VdbeAddOp3(v, OP_SorterData, iTab, regSortOut, iSortTab);
|
||||
bSeq = 0;
|
||||
}else{
|
||||
@ -137221,6 +137283,9 @@ static void generateSortTail(
|
||||
codeOffset(v, p->iOffset, addrContinue);
|
||||
iSortTab = iTab;
|
||||
bSeq = 1;
|
||||
if( p->iOffset>0 ){
|
||||
sqlite3VdbeAddOp2(v, OP_AddImm, p->iLimit, -1);
|
||||
}
|
||||
}
|
||||
for(i=0, iCol=nKey+bSeq-1; i<nColumn; i++){
|
||||
#ifdef SQLITE_ENABLE_SORTER_REFERENCES
|
||||
@ -139213,10 +139278,11 @@ static int multiSelectOrderBy(
|
||||
*/
|
||||
sqlite3VdbeResolveLabel(v, labelEnd);
|
||||
|
||||
/* Reassembly the compound query so that it will be freed correctly
|
||||
/* Reassemble the compound query so that it will be freed correctly
|
||||
** by the calling function */
|
||||
if( pSplit->pPrior ){
|
||||
sqlite3SelectDelete(db, pSplit->pPrior);
|
||||
sqlite3ParserAddCleanup(pParse,
|
||||
(void(*)(sqlite3*,void*))sqlite3SelectDelete, pSplit->pPrior);
|
||||
}
|
||||
pSplit->pPrior = pPrior;
|
||||
pPrior->pNext = pSplit;
|
||||
@ -140735,6 +140801,7 @@ static Table *isSimpleCount(Select *p, AggInfo *pAggInfo){
|
||||
|| p->pSrc->nSrc!=1
|
||||
|| p->pSrc->a[0].pSelect
|
||||
|| pAggInfo->nFunc!=1
|
||||
|| p->pHaving
|
||||
){
|
||||
return 0;
|
||||
}
|
||||
@ -149783,7 +149850,8 @@ static int codeEqualityTerm(
|
||||
}
|
||||
sqlite3ExprDelete(db, pX);
|
||||
}else{
|
||||
aiMap = (int*)sqlite3DbMallocZero(pParse->db, sizeof(int)*nEq);
|
||||
int n = sqlite3ExprVectorSize(pX->pLeft);
|
||||
aiMap = (int*)sqlite3DbMallocZero(pParse->db, sizeof(int)*MAX(nEq,n));
|
||||
eType = sqlite3FindInIndex(pParse, pX, IN_INDEX_LOOP, 0, aiMap, &iTab);
|
||||
}
|
||||
pX = pExpr;
|
||||
@ -181120,7 +181188,7 @@ static int fts3EvalDeferredPhrase(Fts3Cursor *pCsr, Fts3Phrase *pPhrase){
|
||||
nDistance = iPrev - nMaxUndeferred;
|
||||
}
|
||||
|
||||
aOut = (char *)sqlite3_malloc(nPoslist+8);
|
||||
aOut = (char *)sqlite3Fts3MallocZero(nPoslist+FTS3_BUFFER_PADDING);
|
||||
if( !aOut ){
|
||||
sqlite3_free(aPoslist);
|
||||
return SQLITE_NOMEM;
|
||||
@ -204146,7 +204214,7 @@ static int geopolyUpdate(
|
||||
sqlite3_free(p);
|
||||
nChange = 1;
|
||||
}
|
||||
for(jj=1; jj<pRtree->nAux; jj++){
|
||||
for(jj=1; jj<nData-2; jj++){
|
||||
nChange++;
|
||||
sqlite3_bind_value(pUp, jj+2, aData[jj+2]);
|
||||
}
|
||||
@ -236636,7 +236704,7 @@ static void fts5SourceIdFunc(
|
||||
){
|
||||
assert( nArg==0 );
|
||||
UNUSED_PARAM2(nArg, apUnused);
|
||||
sqlite3_result_text(pCtx, "fts5: 2022-07-21 15:24:47 698edb77537b67c41adc68f9b892db56bcf9a55e00371a61420f3ddd668e6603", -1, SQLITE_TRANSIENT);
|
||||
sqlite3_result_text(pCtx, "fts5: 2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8", -1, SQLITE_TRANSIENT);
|
||||
}
|
||||
|
||||
/*
|
||||
|
6
libsqlite3-sys/sqlite3/sqlite3.h
vendored
6
libsqlite3-sys/sqlite3/sqlite3.h
vendored
@ -146,9 +146,9 @@ extern "C" {
|
||||
** [sqlite3_libversion_number()], [sqlite3_sourceid()],
|
||||
** [sqlite_version()] and [sqlite_source_id()].
|
||||
*/
|
||||
#define SQLITE_VERSION "3.39.2"
|
||||
#define SQLITE_VERSION_NUMBER 3039002
|
||||
#define SQLITE_SOURCE_ID "2022-07-21 15:24:47 698edb77537b67c41adc68f9b892db56bcf9a55e00371a61420f3ddd668e6603"
|
||||
#define SQLITE_VERSION "3.39.3"
|
||||
#define SQLITE_VERSION_NUMBER 3039003
|
||||
#define SQLITE_SOURCE_ID "2022-09-05 11:02:23 4635f4a69c8c2a8df242b384a992aea71224e39a2ccab42d8c0b0602f1e826e8"
|
||||
|
||||
/*
|
||||
** CAPI3REF: Run-Time Library Version Numbers
|
||||
|
@ -9,7 +9,7 @@ export SQLITE3_LIB_DIR="$SCRIPT_DIR/sqlite3"
|
||||
export SQLITE3_INCLUDE_DIR="$SQLITE3_LIB_DIR"
|
||||
|
||||
# Download and extract amalgamation
|
||||
SQLITE=sqlite-amalgamation-3390200
|
||||
SQLITE=sqlite-amalgamation-3390300
|
||||
curl -O https://sqlite.org/2022/$SQLITE.zip
|
||||
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.c" > "$SQLITE3_LIB_DIR/sqlite3.c"
|
||||
unzip -p "$SQLITE.zip" "$SQLITE/sqlite3.h" > "$SQLITE3_LIB_DIR/sqlite3.h"
|
||||
|
Loading…
x
Reference in New Issue
Block a user