From: stephan Date: Wed, 27 Sep 2023 14:41:49 +0000 (+0000) Subject: Adapted JNI sqlite3_blob_...() and sqlite3_close...() to the new pointer-passing... X-Git-Tag: version-3.44.0~171^2~6 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1d74432fefa80874bac2e62c50ea65ebc64441ac;p=thirdparty%2Fsqlite.git Adapted JNI sqlite3_blob_...() and sqlite3_close...() to the new pointer-passing mechanism. FossilOrigin-Name: 0b22c8ef93e5ccd45316099fb8575e27620158b1992c0c70fe0348cfc10147f8 --- diff --git a/ext/jni/src/c/sqlite3-jni.c b/ext/jni/src/c/sqlite3-jni.c index e1d64f128d..da457174a4 100644 --- a/ext/jni/src/c/sqlite3-jni.c +++ b/ext/jni/src/c/sqlite3-jni.c @@ -1454,6 +1454,7 @@ static void * NativePointerHolder__get(JNIEnv * env, jobject jNph, #define S3JniLongPtr_T(T,JLongPtr) (T*)(JLongPtr) #define S3JniLongPtr_sqlite3(JLongPtr) S3JniLongPtr_T(sqlite3,JLongPtr) #define S3JniLongPtr_sqlite3_backup(JLongPtr) S3JniLongPtr_T(sqlite3_backup,JLongPtr) +#define S3JniLongPtr_sqlite3_blob(JLongPtr) S3JniLongPtr_T(sqlite3_blob,JLongPtr) #define S3JniLongPtr_sqlite3_stmt(JLongPtr) S3JniLongPtr_T(sqlite3_stmt,JLongPtr) /* @@ -2414,27 +2415,23 @@ S3JniApi(sqlite3_bind_zeroblob64(),jint,1bind_1zeroblob64)( } S3JniApi(sqlite3_blob_bytes(),jint,1blob_1bytes)( - JniArgsEnvClass, jobject jBlob + JniArgsEnvClass, jlong jpBlob ){ - return sqlite3_blob_bytes(PtrGet_sqlite3_blob(jBlob)); + return sqlite3_blob_bytes(S3JniLongPtr_sqlite3_blob(jpBlob)); } S3JniApi(sqlite3_blob_close(),jint,1blob_1close)( - JniArgsEnvClass, jobject jBlob + JniArgsEnvClass, jlong jpBlob ){ - sqlite3_blob * const b = PtrGet_sqlite3_blob(jBlob); - jint const rc = b ? (jint)sqlite3_blob_close(b) : SQLITE_MISUSE; - if( b ){ - NativePointerHolder_set(S3JniNph(sqlite3_blob), jBlob, 0); - } - return rc; + sqlite3_blob * const b = S3JniLongPtr_sqlite3_blob(jpBlob); + return b ? (jint)sqlite3_blob_close(b) : SQLITE_MISUSE; } S3JniApi(sqlite3_blob_open(),jint,1blob_1open)( - JniArgsEnvClass, jobject jDb, jstring jDbName, jstring jTbl, jstring jCol, + JniArgsEnvClass, jlong jpDb, jstring jDbName, jstring jTbl, jstring jCol, jlong jRowId, jint flags, jobject jOut ){ - sqlite3 * const db = PtrGet_sqlite3(jDb); + sqlite3 * const db = S3JniLongPtr_sqlite3(jpDb); sqlite3_blob * pBlob = 0; char * zDbName = 0, * zTableName = 0, * zColumnName = 0; int rc; @@ -2462,13 +2459,13 @@ S3JniApi(sqlite3_blob_open(),jint,1blob_1open)( } S3JniApi(sqlite3_blob_read(),jint,1blob_1read)( - JniArgsEnvClass, jobject jBlob, jbyteArray jTgt, jint iOffset + JniArgsEnvClass, jlong jpBlob, jbyteArray jTgt, jint iOffset ){ jbyte * const pBa = s3jni_jbyteArray_bytes(jTgt); int rc = jTgt ? (pBa ? SQLITE_MISUSE : SQLITE_NOMEM) : SQLITE_MISUSE; if( pBa ){ jsize const nTgt = (*env)->GetArrayLength(env, jTgt); - rc = sqlite3_blob_read(PtrGet_sqlite3_blob(jBlob), pBa, + rc = sqlite3_blob_read(S3JniLongPtr_sqlite3_blob(jpBlob), pBa, (int)nTgt, (int)iOffset); if( 0==rc ){ s3jni_jbyteArray_commit(jTgt, pBa); @@ -2480,16 +2477,16 @@ S3JniApi(sqlite3_blob_read(),jint,1blob_1read)( } S3JniApi(sqlite3_blob_reopen(),jint,1blob_1reopen)( - JniArgsEnvClass, jobject jBlob, jlong iNewRowId + JniArgsEnvClass, jlong jpBlob, jlong iNewRowId ){ - return (jint)sqlite3_blob_reopen(PtrGet_sqlite3_blob(jBlob), + return (jint)sqlite3_blob_reopen(S3JniLongPtr_sqlite3_blob(jpBlob), (sqlite3_int64)iNewRowId); } S3JniApi(sqlite3_blob_write(),jint,1blob_1write)( - JniArgsEnvClass, jobject jBlob, jbyteArray jBa, jint iOffset + JniArgsEnvClass, jlong jpBlob, jbyteArray jBa, jint iOffset ){ - sqlite3_blob * const b = PtrGet_sqlite3_blob(jBlob); + sqlite3_blob * const b = S3JniLongPtr_sqlite3_blob(jpBlob); jbyte * const pBuf = b ? s3jni_jbyteArray_bytes(jBa) : 0; const jsize nBa = pBuf ? (*env)->GetArrayLength(env, jBa) : 0; int rc = SQLITE_MISUSE; @@ -2507,7 +2504,7 @@ static int s3jni_busy_handler(void* pState, int n){ S3JniDeclLocal_env; S3JniHook hook; - S3JniHook_localdup(&ps->hooks.busyHandler, &hook ); + S3JniHook_localdup(&ps->hooks.busyHandler, &hook); if( hook.jObj ){ rc = (*env)->CallIntMethod(env, hook.jObj, hook.midCallback, (jint)n); @@ -2522,9 +2519,9 @@ static int s3jni_busy_handler(void* pState, int n){ } S3JniApi(sqlite3_busy_handler(),jint,1busy_1handler)( - JniArgsEnvClass, jobject jDb, jobject jBusy + JniArgsEnvClass, jlong jpDb, jobject jBusy ){ - S3JniDb * const ps = S3JniDb_from_java(jDb); + S3JniDb * const ps = S3JniDb_from_c(S3JniLongPtr_sqlite3(jpDb)); S3JniHook * const pHook = ps ? &ps->hooks.busyHandler : 0; S3JniHook hook = S3JniHook_empty; int rc = 0; @@ -2567,9 +2564,9 @@ S3JniApi(sqlite3_busy_handler(),jint,1busy_1handler)( } S3JniApi(sqlite3_busy_timeout(),jint,1busy_1timeout)( - JniArgsEnvClass, jobject jDb, jint ms + JniArgsEnvClass, jlong jpDb, jint ms ){ - S3JniDb * const ps = S3JniDb_from_java(jDb); + S3JniDb * const ps = S3JniDb_from_c(S3JniLongPtr_sqlite3(jpDb)); int rc = SQLITE_MISUSE; if( ps ){ S3JniDb_mutex_enter; @@ -2606,32 +2603,25 @@ S3JniApi(sqlite3_cancel_auto_extension(),jboolean,1cancel_1auto_1extension)( } /* Wrapper for sqlite3_close(_v2)(). */ -static jint s3jni_close_db(JNIEnv * const env, jobject jDb, int version){ +static jint s3jni_close_db(JNIEnv * const env, jlong jpDb, int version){ int rc = 0; - S3JniDb * const ps = S3JniDb_from_java(jDb); + S3JniDb * const ps = S3JniDb_from_c(S3JniLongPtr_sqlite3(jpDb)); assert(version == 1 || version == 2); if( ps ){ rc = 1==version ? (jint)sqlite3_close(ps->pDb) : (jint)sqlite3_close_v2(ps->pDb); - if( 0==rc ){ - NativePointerHolder_set(S3JniNph(sqlite3), jDb, 0); - } } return (jint)rc; } -S3JniApi(sqlite3_close_v2(),jint,1close_1v2)( - JniArgsEnvClass, jobject pDb -){ - return s3jni_close_db(env, pDb, 2); +S3JniApi(sqlite3_close(),jint,1close)(JniArgsEnvClass, jlong pDb){ + return s3jni_close_db(env, pDb, 1); } -S3JniApi(sqlite3_close(),jint,1close)( - JniArgsEnvClass, jobject pDb -){ - return s3jni_close_db(env, pDb, 1); +S3JniApi(sqlite3_close_v2(),jint,1close_1v2)(JniArgsEnvClass, jlong pDb){ + return s3jni_close_db(env, pDb, 2); } /* diff --git a/ext/jni/src/c/sqlite3-jni.h b/ext/jni/src/c/sqlite3-jni.h index ae7f8e456a..9a016c2e3f 100644 --- a/ext/jni/src/c/sqlite3-jni.h +++ b/ext/jni/src/c/sqlite3-jni.h @@ -958,66 +958,66 @@ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1bind_1zeroblob64 /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_bytes - * Signature: (Lorg/sqlite/jni/sqlite3_blob;)I + * Signature: (J)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1bytes - (JNIEnv *, jclass, jobject); + (JNIEnv *, jclass, jlong); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_close - * Signature: (Lorg/sqlite/jni/sqlite3_blob;)I + * Signature: (J)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1close - (JNIEnv *, jclass, jobject); + (JNIEnv *, jclass, jlong); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_open - * Signature: (Lorg/sqlite/jni/sqlite3;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;JILorg/sqlite/jni/OutputPointer/sqlite3_blob;)I + * Signature: (JLjava/lang/String;Ljava/lang/String;Ljava/lang/String;JILorg/sqlite/jni/OutputPointer/sqlite3_blob;)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1open - (JNIEnv *, jclass, jobject, jstring, jstring, jstring, jlong, jint, jobject); + (JNIEnv *, jclass, jlong, jstring, jstring, jstring, jlong, jint, jobject); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_read - * Signature: (Lorg/sqlite/jni/sqlite3_blob;[BI)I + * Signature: (J[BI)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1read - (JNIEnv *, jclass, jobject, jbyteArray, jint); + (JNIEnv *, jclass, jlong, jbyteArray, jint); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_reopen - * Signature: (Lorg/sqlite/jni/sqlite3_blob;J)I + * Signature: (JJ)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1reopen - (JNIEnv *, jclass, jobject, jlong); + (JNIEnv *, jclass, jlong, jlong); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_blob_write - * Signature: (Lorg/sqlite/jni/sqlite3_blob;[BI)I + * Signature: (J[BI)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1blob_1write - (JNIEnv *, jclass, jobject, jbyteArray, jint); + (JNIEnv *, jclass, jlong, jbyteArray, jint); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_busy_handler - * Signature: (Lorg/sqlite/jni/sqlite3;Lorg/sqlite/jni/BusyHandlerCallback;)I + * Signature: (JLorg/sqlite/jni/BusyHandlerCallback;)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1busy_1handler - (JNIEnv *, jclass, jobject, jobject); + (JNIEnv *, jclass, jlong, jobject); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_busy_timeout - * Signature: (Lorg/sqlite/jni/sqlite3;I)I + * Signature: (JI)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1busy_1timeout - (JNIEnv *, jclass, jobject, jint); + (JNIEnv *, jclass, jlong, jint); /* * Class: org_sqlite_jni_SQLite3Jni @@ -1054,18 +1054,18 @@ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1clear_1bindings /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_close - * Signature: (Lorg/sqlite/jni/sqlite3;)I + * Signature: (J)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1close - (JNIEnv *, jclass, jobject); + (JNIEnv *, jclass, jlong); /* * Class: org_sqlite_jni_SQLite3Jni * Method: sqlite3_close_v2 - * Signature: (Lorg/sqlite/jni/sqlite3;)I + * Signature: (J)I */ JNIEXPORT jint JNICALL Java_org_sqlite_jni_SQLite3Jni_sqlite3_1close_1v2 - (JNIEnv *, jclass, jobject); + (JNIEnv *, jclass, jlong); /* * Class: org_sqlite_jni_SQLite3Jni diff --git a/ext/jni/src/org/sqlite/jni/SQLite3Jni.java b/ext/jni/src/org/sqlite/jni/SQLite3Jni.java index 6f77a85892..d619bfefed 100644 --- a/ext/jni/src/org/sqlite/jni/SQLite3Jni.java +++ b/ext/jni/src/org/sqlite/jni/SQLite3Jni.java @@ -436,18 +436,38 @@ public final class SQLite3Jni { } @Canonical - public static native int sqlite3_blob_bytes(@NotNull sqlite3_blob blob); + private static native int sqlite3_blob_bytes(@NotNull long ptrToBlob); @Canonical - public static native int sqlite3_blob_close(@Nullable sqlite3_blob blob); + public static int sqlite3_blob_bytes(@NotNull sqlite3_blob blob){ + return sqlite3_blob_bytes(blob.getNativePointer()); + } @Canonical - public static native int sqlite3_blob_open( - @NotNull sqlite3 db, @NotNull String dbName, + static native int sqlite3_blob_close(@Nullable long ptrToBlob); + + @Canonical + public static int sqlite3_blob_close(@Nullable sqlite3_blob blob){ + return sqlite3_blob_close(blob.clearNativePointer()); + } + + @Canonical + private static native int sqlite3_blob_open( + @NotNull long ptrToDb, @NotNull String dbName, @NotNull String tableName, @NotNull String columnName, long iRow, int flags, @NotNull OutputPointer.sqlite3_blob out ); + @Canonical + public static int sqlite3_blob_open( + @NotNull sqlite3 db, @NotNull String dbName, + @NotNull String tableName, @NotNull String columnName, + long iRow, int flags, @NotNull OutputPointer.sqlite3_blob out + ){ + return sqlite3_blob_open(db.getNativePointer(), dbName, tableName, + columnName, iRow, flags, out); + } + /** Convenience overload. */ @@ -456,23 +476,48 @@ public final class SQLite3Jni { @NotNull String tableName, @NotNull String columnName, long iRow, int flags ){ final OutputPointer.sqlite3_blob out = new OutputPointer.sqlite3_blob(); - sqlite3_blob_open(db, dbName, tableName, columnName, iRow, flags, out); + sqlite3_blob_open(db.getNativePointer(), dbName, tableName, columnName, + iRow, flags, out); return out.take(); }; @Canonical - public static native int sqlite3_blob_read( + private static native int sqlite3_blob_read( + @NotNull long ptrToBlob, @NotNull byte[] target, int iOffset + ); + + @Canonical + public static int sqlite3_blob_read( @NotNull sqlite3_blob b, @NotNull byte[] target, int iOffset + ){ + return sqlite3_blob_read(b.getNativePointer(), target, iOffset); + } + + @Canonical + private static native int sqlite3_blob_reopen( + @NotNull long ptrToBlob, long newRowId ); @Canonical - public static native int sqlite3_blob_reopen( - @NotNull sqlite3_blob out, long newRowId + public static int sqlite3_blob_reopen(@NotNull sqlite3_blob b, long newRowId){ + return sqlite3_blob_reopen(b.getNativePointer(), newRowId); + } + + @Canonical + private static native int sqlite3_blob_write( + @NotNull long ptrToBlob, @NotNull byte[] bytes, int iOffset ); @Canonical - public static native int sqlite3_blob_write( - @NotNull sqlite3_blob out, @NotNull byte[] bytes, int iOffset + public static int sqlite3_blob_write( + @NotNull sqlite3_blob b, @NotNull byte[] bytes, int iOffset + ){ + return sqlite3_blob_write(b.getNativePointer(), bytes, iOffset); + } + + @Canonical + private static native int sqlite3_busy_handler( + @NotNull long ptrToDb, @Nullable BusyHandlerCallback handler ); /** @@ -481,14 +526,19 @@ public final class SQLite3Jni { function. Pass it a null handler to clear the busy handler. */ @Canonical - public static native int sqlite3_busy_handler( + public static int sqlite3_busy_handler( @NotNull sqlite3 db, @Nullable BusyHandlerCallback handler - ); + ){ + return sqlite3_busy_handler(db.getNativePointer(), handler); + } @Canonical - public static native int sqlite3_busy_timeout( - @NotNull sqlite3 db, int ms - ); + private static native int sqlite3_busy_timeout(@NotNull long ptrToDb, int ms); + + @Canonical + public static int sqlite3_busy_timeout(@NotNull sqlite3 db, int ms){ + return sqlite3_busy_timeout(db.getNativePointer(), ms); + } @Canonical public static native boolean sqlite3_cancel_auto_extension( @@ -511,14 +561,22 @@ public final class SQLite3Jni { ); @Canonical - public static native int sqlite3_close( - @Nullable sqlite3 db - ); + private static native int sqlite3_close(@Nullable long ptrToDb); @Canonical - public static native int sqlite3_close_v2( - @Nullable sqlite3 db - ); + public static int sqlite3_close(@Nullable sqlite3 db){ + final int rc = sqlite3_close(db.getNativePointer()); + if( 0==rc ) db.clearNativePointer(); + return rc; + } + + @Canonical + static native int sqlite3_close_v2(@Nullable long ptrToDb); + + @Canonical + public static int sqlite3_close_v2(@Nullable sqlite3 db){ + return sqlite3_close_v2(db.clearNativePointer()); + } @Canonical public static native byte[] sqlite3_column_blob( @@ -831,7 +889,7 @@ public final class SQLite3Jni { public static native int sqlite3_error_offset(@NotNull sqlite3 db); @Canonical - private static native int sqlite3_finalize(long ptrToStmt); + static native int sqlite3_finalize(long ptrToStmt); @Canonical public static int sqlite3_finalize(@NotNull sqlite3_stmt stmt){ diff --git a/ext/jni/src/org/sqlite/jni/sqlite3.java b/ext/jni/src/org/sqlite/jni/sqlite3.java index 3f15c45802..ba515b3f4f 100644 --- a/ext/jni/src/org/sqlite/jni/sqlite3.java +++ b/ext/jni/src/org/sqlite/jni/sqlite3.java @@ -39,10 +39,10 @@ public final class sqlite3 extends NativePointerHolder @Override protected void finalize(){ //System.out.println(this+".finalize()"); - SQLite3Jni.sqlite3_close_v2(this); + SQLite3Jni.sqlite3_close_v2(this.clearNativePointer()); } @Override public void close(){ - SQLite3Jni.sqlite3_close_v2(this); + SQLite3Jni.sqlite3_close_v2(this.clearNativePointer()); } } diff --git a/ext/jni/src/org/sqlite/jni/sqlite3_blob.java b/ext/jni/src/org/sqlite/jni/sqlite3_blob.java index e512130256..46c3c90293 100644 --- a/ext/jni/src/org/sqlite/jni/sqlite3_blob.java +++ b/ext/jni/src/org/sqlite/jni/sqlite3_blob.java @@ -19,7 +19,13 @@ package org.sqlite.jni; simply provide a type-safe way to communicate it between Java and C via JNI. */ -public final class sqlite3_blob extends NativePointerHolder { +public final class sqlite3_blob extends NativePointerHolder + implements AutoCloseable { // Only invoked from JNI. private sqlite3_blob(){} + + @Override public void close(){ + SQLite3Jni.sqlite3_blob_close(this.clearNativePointer()); + } + } diff --git a/ext/jni/src/org/sqlite/jni/sqlite3_stmt.java b/ext/jni/src/org/sqlite/jni/sqlite3_stmt.java index 567a20cfa8..d918d380c2 100644 --- a/ext/jni/src/org/sqlite/jni/sqlite3_stmt.java +++ b/ext/jni/src/org/sqlite/jni/sqlite3_stmt.java @@ -26,10 +26,10 @@ public final class sqlite3_stmt extends NativePointerHolder //For as-yet-unknown reasons, this triggers a JVM crash. //@Override protected void finalize(){ - // SQLite3Jni.sqlite3_finalize(this); + // SQLite3Jni.sqlite3_finalize(this.clearNativePointer()); //} @Override public void close(){ - SQLite3Jni.sqlite3_finalize(this); + SQLite3Jni.sqlite3_finalize(this.clearNativePointer()); } } diff --git a/manifest b/manifest index 2bad9e6801..7cde18ac53 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Adapt\sJNI\ssqlite3_bind_...()\sbindings\sto\sthe\snew\spointer-passing\smethod\sand\scorrect\sthe\smapping\sof\ssqlite3_bind_zeroblob64()\sto\suse\szeroblob64()\sinstead\sof\szeroblob().\sRelated\sinternal\sAPI\srenaming. -D 2023-09-27T11:01:32.787 +C Adapted\sJNI\ssqlite3_blob_...()\sand\ssqlite3_close...()\sto\sthe\snew\spointer-passing\smechanism. +D 2023-09-27T14:41:49.881 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -238,8 +238,8 @@ F ext/icu/sqliteicu.h fa373836ed5a1ee7478bdf8a1650689294e41d0c89c1daab26e9ae78a3 F ext/jni/GNUmakefile 42e00052401b6dd41c0cdd53b31450606ea37486283abdb038dff9be74bff71e F ext/jni/README.md 9fceaeb17cecdc5d699dfc83c0cbc3a03fdb3b86bf676381894166c73375ee75 F ext/jni/jar-dist.make 030aaa4ae71dd86e4ec5e7c1e6cd86f9dfa47c4592c070d2e35157e42498e1fa -F ext/jni/src/c/sqlite3-jni.c 7e1e0cf2f06a1d6c813fd3b684b5712dc8cccc6927d5f5d2b89d796f75799fb1 -F ext/jni/src/c/sqlite3-jni.h d503e60cdb9ce98f19d7bdd17a8f1b911931b6dddcc80ebef10c8160a6daab0b +F ext/jni/src/c/sqlite3-jni.c 2c36a16445e2e39e899b2b51f1d1b5d0f42e3008bfcd5c996fdf606d4429af72 +F ext/jni/src/c/sqlite3-jni.h 8d66d189ac58f000b1143da7631fb30abd4554461369fedaa8a7c1ac5462a530 F ext/jni/src/org/sqlite/jni/AbstractCollationCallback.java 95e88ba04f4aac51ffec65693e878e234088b2f21b387f4e4285c8b72b33e436 F ext/jni/src/org/sqlite/jni/AggregateFunction.java 7312486bc65fecdb91753c0a4515799194e031f45edbe16a6373cea18f404dc4 F ext/jni/src/org/sqlite/jni/AuthorizerCallback.java e6135be32f12bf140bffa39be7fd1a45ad83b2661ed49c08dbde04c8485feb38 @@ -259,7 +259,7 @@ F ext/jni/src/org/sqlite/jni/ProgressHandlerCallback.java 7b9ff2218129ece98ba60c F ext/jni/src/org/sqlite/jni/ResultCode.java ba701f20213a5f259e94cfbfdd36eb7ac7ce7797f2c6c7fca2004ff12ce20f86 F ext/jni/src/org/sqlite/jni/RollbackHookCallback.java d12352c0e22840de484ffa9b11ed5058bb0daca2e9f218055d3c54c947a273c4 F ext/jni/src/org/sqlite/jni/SQLFunction.java 544a875d33fd160467d82e2397ac33157b29971d715a821a4fad3c899113ee8c -F ext/jni/src/org/sqlite/jni/SQLite3Jni.java 24ca37368946b4fceabac1913c7a21dbe2a4a9f5db55350b4df2b45d169b4e5f +F ext/jni/src/org/sqlite/jni/SQLite3Jni.java 51a70421655f8663439037606d1cd5feb5102e032d3e851d860a3dac2dc4e6c0 F ext/jni/src/org/sqlite/jni/ScalarFunction.java 6d387bb499fbe3bc13c53315335233dbf6a0c711e8fa7c521683219b041c614c F ext/jni/src/org/sqlite/jni/TableColumnMetadata.java 54511b4297fa28dcb3f49b24035e34ced10e3fd44fd0e458e784f4d6b0096dab F ext/jni/src/org/sqlite/jni/Tester1.java 720e1efddd769d5785e95100ff48aa203f2288eea865326a1a81fd5af43ec3a5 @@ -282,11 +282,11 @@ F ext/jni/src/org/sqlite/jni/fts5/fts5_api.java e2ad9bc06a9d307e0a6221c116457838 F ext/jni/src/org/sqlite/jni/fts5/fts5_extension_function.java 1fe0f5692c1d67475d12b067f0469949073446f18c56eba5ee5da6ddd06db9b9 F ext/jni/src/org/sqlite/jni/fts5/fts5_tokenizer.java ea993738b851038c16d98576abd0db3d6028a231f075a394fb8a78c7834d0f6c F ext/jni/src/org/sqlite/jni/package-info.java a3946db2504de747a1993c4f6e8ce604bec5a8e5a134b292c3b07527bc321a99 -F ext/jni/src/org/sqlite/jni/sqlite3.java 5e56a799ced58ea69e8bcad20c29a61fce32f21a7f4fb3e2702337cf8aa1a06e +F ext/jni/src/org/sqlite/jni/sqlite3.java 5cd95c182a38b874ad973b3c16a70a69786fe82a6793abf147639803dec7ecac F ext/jni/src/org/sqlite/jni/sqlite3_backup.java 12182124c4d4928d78db5a07ea285f1d7af04c7a148f0759a1972d5bfa87311e -F ext/jni/src/org/sqlite/jni/sqlite3_blob.java f28a30134f2e524eb7d5ab87f57f86c90140341a6e8369ee54509ac8bb96fa82 +F ext/jni/src/org/sqlite/jni/sqlite3_blob.java fc631ad52feea6e3d1d62b0d0e769ac107c01bc0ddd20eb512aff07b428cda6d F ext/jni/src/org/sqlite/jni/sqlite3_context.java 66ca95ce904044263a4aff684abe262d56f73e6b06bca6cf650761d79d7779ad -F ext/jni/src/org/sqlite/jni/sqlite3_stmt.java 36ecee9bdde2e70c7276d1c22b48fd9c40a77412e8e0694e9c09910997d6fb4f +F ext/jni/src/org/sqlite/jni/sqlite3_stmt.java cf7f076d8b0f2a23faebbd64e12e8b3dd1977378ca828245d186f1b98458127d F ext/jni/src/org/sqlite/jni/sqlite3_value.java 3d1d4903e267bc0bc81d57d21f5e85978eff389a1a6ed46726dbe75f85e6914a F ext/jni/src/org/sqlite/jni/tester/SQLTester.java 9892797db57c6e01f0c1601b5866474b6c046f0fd6c5b64f411e5815c941040e F ext/jni/src/org/sqlite/jni/tester/test-script-interpreter.md f9f25126127045d051e918fe59004a1485311c50a13edbf18c79a6ff9160030e @@ -2122,8 +2122,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P bccdfeb9efde20410bde545893fb98ce5c0c4d04a8e7797b868ba8994120e1db -R 07ea1023a2462cb72e478a493540d516 +P 980d559fff6e55d1e2ef39f242a8a09313a936cfb141807db475bcceff924869 +R d927af0037b6061c9d963a62e64650b9 U stephan -Z 250cebc4fc9c64e8ca5d6b6a65662ef8 +Z 1d6d1018657afbb7fe95c6220da9d8bf # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 0e420f19f1..ef260973fe 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -980d559fff6e55d1e2ef39f242a8a09313a936cfb141807db475bcceff924869 \ No newline at end of file +0b22c8ef93e5ccd45316099fb8575e27620158b1992c0c70fe0348cfc10147f8 \ No newline at end of file