Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(109)

Unified Diff: Source/modules/webdatabase/SQLTransactionBackendSync.h

Issue 201623003: Rollback transactions by observing them weakly from DatabaseSync. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/modules/webdatabase/SQLTransactionBackendSync.h
diff --git a/Source/modules/webdatabase/SQLTransactionBackendSync.h b/Source/modules/webdatabase/SQLTransactionBackendSync.h
index cb0908e75a0d6e1786022a03dd00bec2ebfef009..3c2542c001c50a43bbfa61a331135fa394522623 100644
--- a/Source/modules/webdatabase/SQLTransactionBackendSync.h
+++ b/Source/modules/webdatabase/SQLTransactionBackendSync.h
@@ -50,9 +50,10 @@ class SQLiteTransaction;
class ExceptionState;
// Instances of this class should be created and used only on the worker's context thread.
-class SQLTransactionBackendSync : public RefCounted<SQLTransactionBackendSync> {
+class SQLTransactionBackendSync : public RefCountedWillBeGarbageCollectedFinalized<SQLTransactionBackendSync> {
public:
~SQLTransactionBackendSync();
+ void trace(Visitor*);
PassRefPtr<SQLResultSet> executeSQL(const String& sqlStatement, const Vector<SQLValue>& arguments, ExceptionState&);
@@ -62,11 +63,12 @@ public:
void execute(ExceptionState&);
void commit(ExceptionState&);
void rollback();
+ void rollbackIfInProgress();
private:
SQLTransactionBackendSync(DatabaseSync*, PassOwnPtr<SQLTransactionSyncCallback>, bool readOnly);
- RefPtrWillBePersistent<DatabaseSync> m_database;
+ RefPtrWillBeMember<DatabaseSync> m_database;
OwnPtr<SQLTransactionSyncCallback> m_callback;
bool m_readOnly;
bool m_hasVersionMismatch;

Powered by Google App Engine
This is Rietveld 408576698