Reviewed by Nate Chapin.
Don't clear the callbacks ref in the proxy layer for IndexedDB
https://bugs.webkit.org/show_bug.cgi?id=53535
Clearing the callbacks doesn't actually solve any problems and makes
this code behave subtly differently than how it would in Safari and
other single process environments. Let's remove the difference.
* src/IDBCallbacksProxy.cpp:
(WebCore::IDBCallbacksProxy::onError):
(WebCore::IDBCallbacksProxy::onSuccess):
* src/IDBTransactionCallbacksProxy.cpp:
(WebCore::IDBTransactionCallbacksProxy::onAbort):
(WebCore::IDBTransactionCallbacksProxy::onComplete):
(WebCore::IDBTransactionCallbacksProxy::onTimeout):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@77572
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2011-02-03 Jeremy Orlow <jorlow@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ Don't clear the callbacks ref in the proxy layer for IndexedDB
+ https://bugs.webkit.org/show_bug.cgi?id=53535
+
+ Clearing the callbacks doesn't actually solve any problems and makes
+ this code behave subtly differently than how it would in Safari and
+ other single process environments. Let's remove the difference.
+
+ * src/IDBCallbacksProxy.cpp:
+ (WebCore::IDBCallbacksProxy::onError):
+ (WebCore::IDBCallbacksProxy::onSuccess):
+ * src/IDBTransactionCallbacksProxy.cpp:
+ (WebCore::IDBTransactionCallbacksProxy::onAbort):
+ (WebCore::IDBTransactionCallbacksProxy::onComplete):
+ (WebCore::IDBTransactionCallbacksProxy::onTimeout):
+
2011-02-03 Hans Wennborg <hans@chromium.org>
Reviewed by Jeremy Orlow.
void IDBCallbacksProxy::onError(PassRefPtr<IDBDatabaseError> idbDatabaseError)
{
m_callbacks->onError(WebKit::WebIDBDatabaseError(idbDatabaseError));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBCursorBackendInterface> idbCursorBackend)
{
m_callbacks->onSuccess(new WebKit::WebIDBCursorImpl(idbCursorBackend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBDatabaseBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBDatabaseImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBIndexBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBIndexImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBKey> idbKey)
{
m_callbacks->onSuccess(WebKit::WebIDBKey(idbKey));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBObjectStoreBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBObjectStoreImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<IDBTransactionBackendInterface> backend)
{
m_callbacks->onSuccess(new WebKit::WebIDBTransactionImpl(backend));
- m_callbacks.clear();
}
void IDBCallbacksProxy::onSuccess(PassRefPtr<SerializedScriptValue> serializedScriptValue)
{
m_callbacks->onSuccess(WebKit::WebSerializedScriptValue(serializedScriptValue));
- m_callbacks.clear();
}
} // namespace WebCore
void IDBTransactionCallbacksProxy::onAbort()
{
m_callbacks->onAbort();
- m_callbacks.clear();
}
void IDBTransactionCallbacksProxy::onComplete()
{
m_callbacks->onComplete();
- m_callbacks.clear();
}
void IDBTransactionCallbacksProxy::onTimeout()
{
m_callbacks->onTimeout();
- m_callbacks.clear();
}
} // namespace WebCore