aboutsummaryrefslogtreecommitdiff
path: root/packages/idb-bridge/src
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2019-08-16 22:35:44 +0200
committerFlorian Dold <florian.dold@gmail.com>2019-08-16 22:35:44 +0200
commit262885679cd8bedaa7b99aab5432daf7bf514a05 (patch)
tree3f0c2efec932099285d82848ce468c9ff515743e /packages/idb-bridge/src
parent705699b2d2f532784ed39583c030e9f72263caff (diff)
downloadwallet-core-262885679cd8bedaa7b99aab5432daf7bf514a05.tar.xz
only invoke afterCommitCallback for transactions that change data
Diffstat (limited to 'packages/idb-bridge/src')
-rw-r--r--packages/idb-bridge/src/MemoryBackend.ts5
1 files changed, 3 insertions, 2 deletions
diff --git a/packages/idb-bridge/src/MemoryBackend.ts b/packages/idb-bridge/src/MemoryBackend.ts
index e09a28988..4154435a0 100644
--- a/packages/idb-bridge/src/MemoryBackend.ts
+++ b/packages/idb-bridge/src/MemoryBackend.ts
@@ -1416,7 +1416,8 @@ export class MemoryBackend implements Backend {
if (!db) {
throw Error("db not found");
}
- if (db.txLevel < TransactionLevel.Read) {
+ const txLevel = db.txLevel;
+ if (txLevel < TransactionLevel.Read) {
throw Error("only allowed while running a transaction");
}
@@ -1455,7 +1456,7 @@ export class MemoryBackend implements Backend {
delete this.connectionsByTransaction[btx.transactionCookie];
this.transactionDoneCond.trigger();
- if (this.afterCommitCallback) {
+ if (this.afterCommitCallback && txLevel >= TransactionLevel.Write) {
await this.afterCommitCallback();
}
}