diff options
Diffstat (limited to 'ext/jni/src/c/sqlite3-jni.c')
-rw-r--r-- | ext/jni/src/c/sqlite3-jni.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/ext/jni/src/c/sqlite3-jni.c b/ext/jni/src/c/sqlite3-jni.c index 0de280ac2..b4a48ef2c 100644 --- a/ext/jni/src/c/sqlite3-jni.c +++ b/ext/jni/src/c/sqlite3-jni.c @@ -3361,11 +3361,14 @@ S3JniApi(sqlite3_errcode(),jint,1errcode)( return pDb ? sqlite3_errcode(pDb) : SQLITE_MISUSE; } -S3JniApi(sqlite3_errmsg(),jstring,1errmsg)( +S3JniApi(sqlite3_errmsg16(),jstring,1errmsg16)( JniArgsEnvClass, jobject jpDb ){ sqlite3 * const pDb = PtrGet_sqlite3(jpDb); - return pDb ? s3jni_utf8_to_jstring( sqlite3_errmsg(pDb), -1) : 0; + return pDb ? s3jni_utf8_to_jstring( sqlite3_errmsg(pDb), -1) : 0 + /* We don't use errmsg16() directly only because it would cause an + additional level of internal encoding in sqlite3. The end + effect should be identical to using errmsg16(), however. */; } S3JniApi(sqlite3_errstr(),jstring,1errstr)( |