From bad94ffbc1a7c29c34d828108cb02e7401adb242 Mon Sep 17 00:00:00 2001 From: GoldFish2500 Date: Wed, 14 Jan 2026 12:46:40 +0300 Subject: [PATCH] fix: address static analysis warnings in SQLite and WebStorage --- src/node_sqlite.cc | 8 ++++++-- src/node_webstorage.cc | 1 + 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/node_sqlite.cc b/src/node_sqlite.cc index 6d35236dce0f82..1f407cdf1aea20 100644 --- a/src/node_sqlite.cc +++ b/src/node_sqlite.cc @@ -97,7 +97,11 @@ using v8::Value; case SQLITE_TEXT: { \ const char* v = \ reinterpret_cast(sqlite3_##from##_text(__VA_ARGS__)); \ - (result) = String::NewFromUtf8((isolate), v).As(); \ + if (v == nullptr) { \ + (result) = Null((isolate)); \ + } else { \ + (result) = String::NewFromUtf8((isolate), v).As(); \ + } \ break; \ } \ case SQLITE_NULL: { \ @@ -246,7 +250,7 @@ inline void THROW_ERR_SQLITE_ERROR(Isolate* isolate, int errcode) { Environment* env = Environment::GetCurrent(isolate); Local error; - if (CreateSQLiteError(isolate, errstr).ToLocal(&error) && + if (env && CreateSQLiteError(isolate, errstr).ToLocal(&error) && error ->Set(isolate->GetCurrentContext(), env->errcode_string(), diff --git a/src/node_webstorage.cc b/src/node_webstorage.cc index 0b301a310fa397..5ce8611f3de05d 100644 --- a/src/node_webstorage.cc +++ b/src/node_webstorage.cc @@ -177,6 +177,7 @@ Maybe Storage::Open() { sqlite3_stmt* s = nullptr; r = sqlite3_prepare_v2( db, get_schema_version_sql.data(), get_schema_version_sql.size(), &s, 0); + CHECK_ERROR_OR_THROW(env(), r, SQLITE_OK, Nothing()); r = sqlite3_exec(db, init_sql_v0.data(), 0, 0, nullptr); CHECK_ERROR_OR_THROW(env(), r, SQLITE_OK, Nothing()); auto stmt = stmt_unique_ptr(s);