| Index: WebCore/platform/sql/SQLiteDatabase.h
|
| ===================================================================
|
| --- WebCore/platform/sql/SQLiteDatabase.h (revision 55036)
|
| +++ WebCore/platform/sql/SQLiteDatabase.h (working copy)
|
| @@ -97,7 +97,7 @@
|
| const char* lastErrorMsg();
|
|
|
| sqlite3* sqlite3Handle() const {
|
| - ASSERT(currentThread() == m_openingThread);
|
| + ASSERT(m_sharable || currentThread() == m_openingThread);
|
| return m_db;
|
| }
|
|
|
| @@ -108,6 +108,12 @@
|
| void unlock();
|
| bool isAutoCommitOn() const;
|
|
|
| + // Set this flag to allow access from multiple threads. Not all multi-threaded accesses are safe!
|
| + // See http://www.sqlite.org/cvstrac/wiki?p=MultiThreading for more info, and you must be running with compile flags and SQLite version appropriate
|
| + // to your cross-thread uses.
|
| + bool sharable() { return m_sharable; }
|
| + void setSharable(bool sharable) { m_sharable = sharable; }
|
| +
|
| private:
|
| static int authorizerFunction(void*, int, const char*, const char*, const char*, const char*);
|
|
|
| @@ -120,6 +126,7 @@
|
| int m_pageSize;
|
|
|
| bool m_transactionInProgress;
|
| + bool m_sharable;
|
|
|
| Mutex m_authorizerLock;
|
| RefPtr<DatabaseAuthorizer> m_authorizer;
|
|
|