Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 330ec91e authored by Jeff Brown's avatar Jeff Brown
Browse files

Check whether db was really opened read/write.

Bug: 6176510
Change-Id: I7aeeb4340e55d554a57bb46c3c27ab37186f7e3a
parent 59a422e9
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -120,6 +120,13 @@ static jint nativeOpen(JNIEnv* env, jclass clazz, jstring pathStr, jint openFlag
        return 0;
    }

    // Check that the database is really read/write when that is what we asked for.
    if ((sqliteFlags & SQLITE_OPEN_READWRITE) && sqlite3_db_readonly(db, NULL)) {
        throw_sqlite3_exception(env, db, "Could not open the database in read/write mode.");
        sqlite3_close(db);
        return 0;
    }

    // Set the default busy handler to retry for 1000ms and then return SQLITE_BUSY
    err = sqlite3_busy_timeout(db, 1000 /* ms */);
    if (err != SQLITE_OK) {