Commit 227859e5 authored by Chase Phillips's avatar Chase Phillips Committed by Commit Bot

IndexedDB: Return after detecting a bad mojo message

Bug: 984521
Change-Id: I7b89323f4fcb8fadcc9926387729fa508463c6a8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1704858Reviewed-by: default avatarDaniel Murphy <dmurph@chromium.org>
Commit-Queue: Chase Phillips <cmp@chromium.org>
Cr-Commit-Position: refs/heads/master@{#677999}
parent f927c639
...@@ -75,6 +75,7 @@ void DatabaseImpl::RenameObjectStore(int64_t transaction_id, ...@@ -75,6 +75,7 @@ void DatabaseImpl::RenameObjectStore(int64_t transaction_id,
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"RenameObjectStore must be called from a version change transaction."); "RenameObjectStore must be called from a version change transaction.");
return;
} }
// Note: This doesn't schedule a task on the transaction because version // Note: This doesn't schedule a task on the transaction because version
...@@ -241,6 +242,7 @@ void DatabaseImpl::SetIndexKeys( ...@@ -241,6 +242,7 @@ void DatabaseImpl::SetIndexKeys(
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"SetIndexKeys must be called from a version change transaction."); "SetIndexKeys must be called from a version change transaction.");
return;
} }
connection_->database()->SetIndexKeys( connection_->database()->SetIndexKeys(
...@@ -263,6 +265,7 @@ void DatabaseImpl::SetIndexesReady(int64_t transaction_id, ...@@ -263,6 +265,7 @@ void DatabaseImpl::SetIndexesReady(int64_t transaction_id,
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"SetIndexesReady must be called from a version change transaction."); "SetIndexesReady must be called from a version change transaction.");
return;
} }
connection_->database()->SetIndexesReady(transaction, object_store_id, connection_->database()->SetIndexesReady(transaction, object_store_id,
...@@ -295,6 +298,7 @@ void DatabaseImpl::OpenCursor( ...@@ -295,6 +298,7 @@ void DatabaseImpl::OpenCursor(
mojo::ReportBadMessage( mojo::ReportBadMessage(
"OpenCursor with |Preemptive| task type must be called from a version " "OpenCursor with |Preemptive| task type must be called from a version "
"change transaction."); "change transaction.");
return;
} }
connection_->database()->OpenCursor( connection_->database()->OpenCursor(
...@@ -406,6 +410,7 @@ void DatabaseImpl::CreateIndex(int64_t transaction_id, ...@@ -406,6 +410,7 @@ void DatabaseImpl::CreateIndex(int64_t transaction_id,
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"CreateIndex must be called from a version change transaction."); "CreateIndex must be called from a version change transaction.");
return;
} }
connection_->database()->CreateIndex(transaction, object_store_id, index_id, connection_->database()->CreateIndex(transaction, object_store_id, index_id,
...@@ -427,6 +432,7 @@ void DatabaseImpl::DeleteIndex(int64_t transaction_id, ...@@ -427,6 +432,7 @@ void DatabaseImpl::DeleteIndex(int64_t transaction_id,
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"DeleteIndex must be called from a version change transaction."); "DeleteIndex must be called from a version change transaction.");
return;
} }
connection_->database()->DeleteIndex(transaction, object_store_id, index_id); connection_->database()->DeleteIndex(transaction, object_store_id, index_id);
...@@ -448,6 +454,7 @@ void DatabaseImpl::RenameIndex(int64_t transaction_id, ...@@ -448,6 +454,7 @@ void DatabaseImpl::RenameIndex(int64_t transaction_id,
if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"RenameIndex must be called from a version change transaction."); "RenameIndex must be called from a version change transaction.");
return;
} }
connection_->database()->RenameIndex(transaction, object_store_id, index_id, connection_->database()->RenameIndex(transaction, object_store_id, index_id,
......
...@@ -98,6 +98,7 @@ void TransactionImpl::CreateObjectStore(int64_t object_store_id, ...@@ -98,6 +98,7 @@ void TransactionImpl::CreateObjectStore(int64_t object_store_id,
if (transaction_->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction_->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"CreateObjectStore must be called from a version change transaction."); "CreateObjectStore must be called from a version change transaction.");
return;
} }
IndexedDBConnection* connection = transaction_->connection(); IndexedDBConnection* connection = transaction_->connection();
...@@ -118,6 +119,7 @@ void TransactionImpl::DeleteObjectStore(int64_t object_store_id) { ...@@ -118,6 +119,7 @@ void TransactionImpl::DeleteObjectStore(int64_t object_store_id) {
if (transaction_->mode() != blink::mojom::IDBTransactionMode::VersionChange) { if (transaction_->mode() != blink::mojom::IDBTransactionMode::VersionChange) {
mojo::ReportBadMessage( mojo::ReportBadMessage(
"DeleteObjectStore must be called from a version change transaction."); "DeleteObjectStore must be called from a version change transaction.");
return;
} }
IndexedDBConnection* connection = transaction_->connection(); IndexedDBConnection* connection = transaction_->connection();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment