| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * | 7 * |
| 8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
| (...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 333 | 333 |
| 334 Vector<String, 1> indexNames; | 334 Vector<String, 1> indexNames; |
| 335 indexNames.append(m_indexMetadata.name); | 335 indexNames.append(m_indexMetadata.name); |
| 336 if (cursor) { | 336 if (cursor) { |
| 337 cursor->continueFunction(ec); | 337 cursor->continueFunction(ec); |
| 338 ASSERT(!ec); | 338 ASSERT(!ec); |
| 339 | 339 |
| 340 RefPtr<IDBKey> primaryKey = cursor->primaryKey(); | 340 RefPtr<IDBKey> primaryKey = cursor->primaryKey(); |
| 341 RefPtr<IDBAny> valueAny = cursor->value(); | 341 RefPtr<IDBAny> valueAny = cursor->value(); |
| 342 | 342 |
| 343 ASSERT(valueAny->type() == IDBAny::ScriptValueType); | 343 ASSERT(valueAny->type() == IDBAny::SerializedScriptValueType); |
| 344 ScriptValue value = valueAny->scriptValue(); | 344 RefPtr<SerializedScriptValue> serializedValue = valueAny->serialized
ScriptValue(); |
| 345 ScriptValue value(deserializeIDBValue(context, serializedValue)); |
| 345 | 346 |
| 346 IDBObjectStore::IndexKeys indexKeys; | 347 IDBObjectStore::IndexKeys indexKeys; |
| 347 generateIndexKeysForValue(m_indexMetadata, value, &indexKeys); | 348 generateIndexKeysForValue(m_indexMetadata, value, &indexKeys); |
| 348 | 349 |
| 349 Vector<IDBObjectStore::IndexKeys, 1> indexKeysList; | 350 Vector<IDBObjectStore::IndexKeys, 1> indexKeysList; |
| 350 indexKeysList.append(indexKeys); | 351 indexKeysList.append(indexKeys); |
| 351 | 352 |
| 352 m_objectStoreBackend->setIndexKeys(primaryKey, indexNames, indexKeys
List, m_transaction.get()); | 353 m_objectStoreBackend->setIndexKeys(primaryKey, indexNames, indexKeys
List, m_transaction.get()); |
| 353 | 354 |
| 354 } else { | 355 } else { |
| (...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 585 ASSERT(m_transaction->isFinished()); | 586 ASSERT(m_transaction->isFinished()); |
| 586 | 587 |
| 587 // Break reference cycles. | 588 // Break reference cycles. |
| 588 m_indexMap.clear(); | 589 m_indexMap.clear(); |
| 589 } | 590 } |
| 590 | 591 |
| 591 | 592 |
| 592 } // namespace WebCore | 593 } // namespace WebCore |
| 593 | 594 |
| 594 #endif // ENABLE(INDEXED_DATABASE) | 595 #endif // ENABLE(INDEXED_DATABASE) |
| OLD | NEW |