- Revision
- 188865
- Author
- ander...@apple.com
- Date
- 2015-08-24 10:16:47 -0700 (Mon, 24 Aug 2015)
Log Message
Remove unused return values from SQLTransaction state functions
https://bugs.webkit.org/show_bug.cgi?id=148344
Reviewed by Tim Horton.
* Modules/webdatabase/SQLTransaction.cpp:
(WebCore::SQLTransaction::deliverTransactionCallback):
(WebCore::SQLTransaction::deliverTransactionErrorCallback):
(WebCore::SQLTransaction::deliverStatementCallback):
(WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
(WebCore::SQLTransaction::deliverSuccessCallback):
(WebCore::SQLTransaction::unreachableState):
* Modules/webdatabase/SQLTransaction.h:
* Modules/webdatabase/SQLTransactionBackend.cpp:
(WebCore::SQLTransactionBackend::acquireLock):
(WebCore::SQLTransactionBackend::openTransactionAndPreflight):
(WebCore::SQLTransactionBackend::runStatements):
(WebCore::SQLTransactionBackend::cleanupAndTerminate):
(WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):
(WebCore::SQLTransactionBackend::unreachableState):
* Modules/webdatabase/SQLTransactionBackend.h:
* Modules/webdatabase/SQLTransactionStateMachine.h:
(WebCore::SQLTransactionStateMachine<T>::runStateMachine):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (188864 => 188865)
--- trunk/Source/WebCore/ChangeLog 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/ChangeLog 2015-08-24 17:16:47 UTC (rev 188865)
@@ -1,3 +1,29 @@
+2015-08-21 Anders Carlsson <ander...@apple.com>
+
+ Remove unused return values from SQLTransaction state functions
+ https://bugs.webkit.org/show_bug.cgi?id=148344
+
+ Reviewed by Tim Horton.
+
+ * Modules/webdatabase/SQLTransaction.cpp:
+ (WebCore::SQLTransaction::deliverTransactionCallback):
+ (WebCore::SQLTransaction::deliverTransactionErrorCallback):
+ (WebCore::SQLTransaction::deliverStatementCallback):
+ (WebCore::SQLTransaction::deliverQuotaIncreaseCallback):
+ (WebCore::SQLTransaction::deliverSuccessCallback):
+ (WebCore::SQLTransaction::unreachableState):
+ * Modules/webdatabase/SQLTransaction.h:
+ * Modules/webdatabase/SQLTransactionBackend.cpp:
+ (WebCore::SQLTransactionBackend::acquireLock):
+ (WebCore::SQLTransactionBackend::openTransactionAndPreflight):
+ (WebCore::SQLTransactionBackend::runStatements):
+ (WebCore::SQLTransactionBackend::cleanupAndTerminate):
+ (WebCore::SQLTransactionBackend::cleanupAfterTransactionErrorCallback):
+ (WebCore::SQLTransactionBackend::unreachableState):
+ * Modules/webdatabase/SQLTransactionBackend.h:
+ * Modules/webdatabase/SQLTransactionStateMachine.h:
+ (WebCore::SQLTransactionStateMachine<T>::runStateMachine):
+
2015-08-24 Wenson Hsieh <wenson_hs...@apple.com>
Unreviewed, fix build after r188860
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp (188864 => 188865)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.cpp 2015-08-24 17:16:47 UTC (rev 188865)
@@ -122,7 +122,7 @@
m_database->scheduleTransactionCallback(this);
}
-SQLTransactionState SQLTransaction::deliverTransactionCallback()
+void SQLTransaction::deliverTransactionCallback()
{
bool shouldDeliverErrorCallback = false;
@@ -141,10 +141,9 @@
}
m_backend->requestTransitToState(SQLTransactionState::RunStatements);
- return SQLTransactionState::Idle;
}
-SQLTransactionState SQLTransaction::deliverTransactionErrorCallback()
+void SQLTransaction::deliverTransactionErrorCallback()
{
// Spec 4.3.2.10: If exists, invoke error callback with the last
// error to have occurred in this transaction.
@@ -167,10 +166,9 @@
// Spec 4.3.2.10: Rollback the transaction.
m_backend->requestTransitToState(SQLTransactionState::CleanupAfterTransactionErrorCallback);
- return SQLTransactionState::Idle;
}
-SQLTransactionState SQLTransaction::deliverStatementCallback()
+void SQLTransaction::deliverStatementCallback()
{
// Spec 4.3.2.6.6 and 4.3.2.6.3: If the statement callback went wrong, jump to the transaction error callback
// Otherwise, continue to loop through the statement queue
@@ -192,14 +190,13 @@
// No error callback, so fast-forward to:
// Transaction Step 11 - Rollback the transaction.
m_backend->requestTransitToState(SQLTransactionState::CleanupAfterTransactionErrorCallback);
- return SQLTransactionState::Idle;
+ return;
}
m_backend->requestTransitToState(SQLTransactionState::RunStatements);
- return SQLTransactionState::Idle;
}
-SQLTransactionState SQLTransaction::deliverQuotaIncreaseCallback()
+void SQLTransaction::deliverQuotaIncreaseCallback()
{
ASSERT(m_backend->currentStatement());
@@ -207,10 +204,9 @@
m_backend->setShouldRetryCurrentStatement(shouldRetryCurrentStatement);
m_backend->requestTransitToState(SQLTransactionState::RunStatements);
- return SQLTransactionState::Idle;
}
-SQLTransactionState SQLTransaction::deliverSuccessCallback()
+void SQLTransaction::deliverSuccessCallback()
{
// Spec 4.3.2.8: Deliver success callback.
RefPtr<VoidCallback> successCallback = m_successCallbackWrapper.unwrap();
@@ -222,16 +218,14 @@
// Schedule a "post-success callback" step to return control to the database thread in case there
// are further transactions queued up for this Database
m_backend->requestTransitToState(SQLTransactionState::CleanupAndTerminate);
- return SQLTransactionState::Idle;
}
// This state function is used as a stub function to plug unimplemented states
// in the state dispatch table. They are unimplemented because they should
// never be reached in the course of correct execution.
-SQLTransactionState SQLTransaction::unreachableState()
+void SQLTransaction::unreachableState()
{
ASSERT_NOT_REACHED();
- return SQLTransactionState::End;
}
void SQLTransaction::performPendingCallback()
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.h (188864 => 188865)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.h 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransaction.h 2015-08-24 17:16:47 UTC (rev 188865)
@@ -76,13 +76,13 @@
void computeNextStateAndCleanupIfNeeded();
// State functions:
- SQLTransactionState deliverTransactionCallback();
- SQLTransactionState deliverTransactionErrorCallback();
- SQLTransactionState deliverStatementCallback();
- SQLTransactionState deliverQuotaIncreaseCallback();
- SQLTransactionState deliverSuccessCallback();
+ void deliverTransactionCallback();
+ void deliverTransactionErrorCallback();
+ void deliverStatementCallback();
+ void deliverQuotaIncreaseCallback();
+ void deliverSuccessCallback();
- SQLTransactionState unreachableState();
+ NO_RETURN_DUE_TO_ASSERT void unreachableState();
Ref<Database> m_database;
RefPtr<SQLTransactionBackend> m_backend;
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.cpp (188864 => 188865)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.cpp 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.cpp 2015-08-24 17:16:47 UTC (rev 188865)
@@ -535,10 +535,9 @@
doCleanup();
}
-SQLTransactionState SQLTransactionBackend::acquireLock()
+void SQLTransactionBackend::acquireLock()
{
m_database->transactionCoordinator()->acquireLock(this);
- return SQLTransactionState::Idle;
}
void SQLTransactionBackend::lockAcquired()
@@ -550,7 +549,7 @@
m_database->scheduleTransactionStep(this);
}
-SQLTransactionState SQLTransactionBackend::openTransactionAndPreflight()
+void SQLTransactionBackend::openTransactionAndPreflight()
{
ASSERT(!m_database->sqliteDatabase().transactionInProgress());
ASSERT(m_lockAcquired);
@@ -562,7 +561,7 @@
m_transactionError = SQLError::create(SQLError::UNKNOWN_ERR, "unable to open a transaction, because the user deleted the database");
handleTransactionError();
- return SQLTransactionState::Idle;
+ return;
}
// Set the maximum usage for this transaction if this transactions is not read-only
@@ -587,7 +586,7 @@
m_sqliteTransaction = nullptr;
handleTransactionError();
- return SQLTransactionState::Idle;
+ return;
}
// Note: We intentionally retrieve the actual version even with an empty expected version.
@@ -602,7 +601,7 @@
m_database->enableAuthorizer();
handleTransactionError();
- return SQLTransactionState::Idle;
+ return;
}
m_hasVersionMismatch = !m_database->expectedVersion().isEmpty() && (m_database->expectedVersion() != actualVersion);
@@ -617,20 +616,20 @@
m_transactionError = SQLError::create(SQLError::UNKNOWN_ERR, "unknown error occurred during transaction preflight");
handleTransactionError();
- return SQLTransactionState::Idle;
+ return;
}
// Spec 4.3.2.4: Invoke the transaction callback with the new SQLTransaction object
if (m_hasCallback) {
m_frontend->requestTransitToState(SQLTransactionState::DeliverTransactionCallback);
- return SQLTransactionState::Idle;
+ return;
}
// If we have no callback to make, skip pass to the state after:
- return runStatements();
+ runStatements();
}
-SQLTransactionState SQLTransactionBackend::runStatements()
+void SQLTransactionBackend::runStatements()
{
ASSERT(m_lockAcquired);
@@ -665,8 +664,6 @@
// the callback or performed any other additional work so we can return.
if (!m_currentStatementBackend)
postflightAndCommit();
-
- return SQLTransactionState::Idle;
}
void SQLTransactionBackend::getNextStatement()
@@ -790,7 +787,7 @@
m_frontend->requestTransitToState(SQLTransactionState::DeliverSuccessCallback);
}
-SQLTransactionState SQLTransactionBackend::cleanupAndTerminate()
+void SQLTransactionBackend::cleanupAndTerminate()
{
ASSERT(m_lockAcquired);
@@ -801,10 +798,9 @@
// Phase 5 cleanup. See comment on the SQLTransaction life-cycle above.
doCleanup();
m_database->inProgressTransactionCompleted();
- return SQLTransactionState::End;
}
-SQLTransactionState SQLTransactionBackend::cleanupAfterTransactionErrorCallback()
+void SQLTransactionBackend::cleanupAfterTransactionErrorCallback()
{
ASSERT(m_lockAcquired);
@@ -823,7 +819,7 @@
ASSERT(!m_database->sqliteDatabase().transactionInProgress());
- return cleanupAndTerminate();
+ cleanupAndTerminate();
}
// requestTransitToState() can be called from the frontend. Hence, it should
@@ -840,10 +836,9 @@
// This state function is used as a stub function to plug unimplemented states
// in the state dispatch table. They are unimplemented because they should
// never be reached in the course of correct execution.
-SQLTransactionState SQLTransactionBackend::unreachableState()
+void SQLTransactionBackend::unreachableState()
{
ASSERT_NOT_REACHED();
- return SQLTransactionState::End;
}
void SQLTransactionBackend::acquireOriginLock()
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.h (188864 => 188865)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.h 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransactionBackend.h 2015-08-24 17:16:47 UTC (rev 188865)
@@ -88,13 +88,13 @@
void computeNextStateAndCleanupIfNeeded();
// State functions:
- SQLTransactionState acquireLock();
- SQLTransactionState openTransactionAndPreflight();
- SQLTransactionState runStatements();
- SQLTransactionState cleanupAndTerminate();
- SQLTransactionState cleanupAfterTransactionErrorCallback();
+ void acquireLock();
+ void openTransactionAndPreflight();
+ void runStatements();
+ void cleanupAndTerminate();
+ void cleanupAfterTransactionErrorCallback();
- SQLTransactionState unreachableState();
+ NO_RETURN_DUE_TO_ASSERT void unreachableState();
void getNextStatement();
bool runCurrentStatement();
Modified: trunk/Source/WebCore/Modules/webdatabase/SQLTransactionStateMachine.h (188864 => 188865)
--- trunk/Source/WebCore/Modules/webdatabase/SQLTransactionStateMachine.h 2015-08-24 17:13:06 UTC (rev 188864)
+++ trunk/Source/WebCore/Modules/webdatabase/SQLTransactionStateMachine.h 2015-08-24 17:16:47 UTC (rev 188865)
@@ -39,7 +39,7 @@
protected:
SQLTransactionStateMachine();
- typedef SQLTransactionState (T::* StateFunction)();
+ typedef void (T::*StateFunction)();
virtual StateFunction stateFunctionFor(SQLTransactionState) = 0;
void setStateToRequestedState();
@@ -90,17 +90,20 @@
void SQLTransactionStateMachine<T>::runStateMachine()
{
ASSERT(SQLTransactionState::End < SQLTransactionState::Idle);
- while (m_nextState > SQLTransactionState::Idle) {
- ASSERT(m_nextState < SQLTransactionState::NumberOfStates);
- StateFunction stateFunction = stateFunctionFor(m_nextState);
- ASSERT(stateFunction);
+ ASSERT(m_nextState > SQLTransactionState::Idle);
+ ASSERT(m_nextState < SQLTransactionState::NumberOfStates);
+
+ StateFunction stateFunction = stateFunctionFor(m_nextState);
+ ASSERT(stateFunction);
+
#ifndef NDEBUG
- m_stateAuditTrail[m_nextStateAuditEntry] = m_nextState;
- m_nextStateAuditEntry = (m_nextStateAuditEntry + 1) % s_sizeOfStateAuditTrail;
+ m_stateAuditTrail[m_nextStateAuditEntry] = m_nextState;
+ m_nextStateAuditEntry = (m_nextStateAuditEntry + 1) % s_sizeOfStateAuditTrail;
#endif
- m_nextState = (static_cast<T*>(this)->*stateFunction)();
- }
+
+ (static_cast<T*>(this)->*stateFunction)();
+ m_nextState = SQLTransactionState::Idle;
}
} // namespace WebCore