summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/renderer_webidbdatabase_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/renderer/renderer_webidbdatabase_impl.cc')
-rw-r--r--chrome/renderer/renderer_webidbdatabase_impl.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/chrome/renderer/renderer_webidbdatabase_impl.cc b/chrome/renderer/renderer_webidbdatabase_impl.cc
index 874342f..25137da 100644
--- a/chrome/renderer/renderer_webidbdatabase_impl.cc
+++ b/chrome/renderer/renderer_webidbdatabase_impl.cc
@@ -110,15 +110,17 @@ WebKit::WebIDBTransaction* RendererWebIDBDatabaseImpl::transaction(
unsigned short mode,
unsigned long timeout,
WebExceptionCode& ec) {
- std::vector<string16> object_stores(names.length());
- for (unsigned int i = 0; i < names.length(); ++i) {
+ std::vector<string16> object_stores;
+ object_stores.reserve(names.length());
+ for (unsigned int i = 0; i < names.length(); ++i)
object_stores.push_back(names.item(i));
- }
int transaction_id;
RenderThread::current()->Send(
new ViewHostMsg_IDBDatabaseTransaction(
idb_database_id_, object_stores, mode,
timeout, &transaction_id, &ec));
+ if (!transaction_id)
+ return NULL;
return new RendererWebIDBTransactionImpl(transaction_id);
}