aboutsummaryrefslogtreecommitdiff
path: root/ext/wasm/api/sqlite3-wasm.c
diff options
context:
space:
mode:
authorstephan <stephan@noemail.net>2023-08-24 14:17:30 +0000
committerstephan <stephan@noemail.net>2023-08-24 14:17:30 +0000
commit6043947eee46fdbd63bfede74bc969ad6ea22c30 (patch)
treee0244e9be62f7c40f06c8a9f21bc4965f2785c2d /ext/wasm/api/sqlite3-wasm.c
parent656f6c0c80004aa1dc96bde9019761fb3d7cfacc (diff)
downloadsqlite-6043947eee46fdbd63bfede74bc969ad6ea22c30.tar.gz
sqlite-6043947eee46fdbd63bfede74bc969ad6ea22c30.zip
Ensure that db mutex is held when using sqlite3ErrorWithMessage() to avoid a potential assertion in debug builds.
FossilOrigin-Name: b8f6a50a4bf9478324f0272d79f2fe6992a49b753e79e39a268c6afb261bb01e
Diffstat (limited to 'ext/wasm/api/sqlite3-wasm.c')
-rw-r--r--ext/wasm/api/sqlite3-wasm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/ext/wasm/api/sqlite3-wasm.c b/ext/wasm/api/sqlite3-wasm.c
index fcfbc0692..ff15e3b4f 100644
--- a/ext/wasm/api/sqlite3-wasm.c
+++ b/ext/wasm/api/sqlite3-wasm.c
@@ -352,7 +352,9 @@ int sqlite3_wasm_db_error(sqlite3*db, int err_code, const char *zMsg){
if( db!=0 ){
if( 0!=zMsg ){
const int nMsg = sqlite3Strlen30(zMsg);
+ sqlite3_mutex_enter(sqlite3_db_mutex(db));
sqlite3ErrorWithMsg(db, err_code, "%.*s", nMsg, zMsg);
+ sqlite3_mutex_leave(sqlite3_db_mutex(db));
}else{
sqlite3ErrorWithMsg(db, err_code, NULL);
}