You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: index.bs
+16-8Lines changed: 16 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -2984,7 +2984,7 @@ To <dfn>add or put</dfn> with |handle|, |value|, |key|, and |no-overwrite flag|,
2984
2984
2985
2985
1. Let |targetRealm| be a user-agent defined [=Realm=].
2986
2986
2987
-
1. Let |clone| be a [=clone=] of |value| in |targetRealm|.
2987
+
1. Let |clone| be a [=clone=] of |value| in |targetRealm| during |transaction|.
2988
2988
Rethrow any exceptions.
2989
2989
2990
2990
<details class=note>
@@ -4681,7 +4681,7 @@ invoked, must run these steps:
4681
4681
4682
4682
1. Let |targetRealm| be a user-agent defined [=Realm=].
4683
4683
4684
-
1. Let |clone| be a [=clone=] of |value| in |targetRealm|.
4684
+
1. Let |clone| be a [=clone=] of |value| in |targetRealm| during |transaction|.
4685
4685
Rethrow any exceptions.
4686
4686
4687
4687
<details class=note>
@@ -5529,8 +5529,7 @@ To <dfn>abort an upgrade transaction</dfn> with |transaction|, run these steps:
5529
5529
5530
5530
<div class=algorithm>
5531
5531
5532
-
To <dfn>fire a success event</dfn> at a |request|,
5533
-
the implementation must run these steps:
5532
+
To <dfn>fire a success event</dfn> at a |request|, run these steps:
5534
5533
5535
5534
1. Let |event| be the result of [=creating an event=] using {{Event}}.
5536
5535
@@ -5569,8 +5568,7 @@ the implementation must run these steps:
5569
5568
5570
5569
<div class=algorithm>
5571
5570
5572
-
To <dfn>fire an error event</dfn> at a |request|,
5573
-
the implementation must run these steps:
5571
+
To <dfn>fire an error event</dfn> at a |request|, run these steps:
5574
5572
5575
5573
1. Let |event| be the result of [=creating an event=] using {{Event}}.
5576
5574
@@ -5622,13 +5620,23 @@ the implementation must run these steps:
5622
5620
5623
5621
<div class=algorithm>
5624
5622
5625
-
To make a <dfn>clone</dfn> of |value| in |targetRealm|,
5626
-
the implementation must run these steps:
5623
+
To make a <dfn>clone</dfn> of |value| in |targetRealm| during |transaction|,
5624
+
run these steps:
5625
+
5626
+
1. [=/Assert=]: |transaction|'s [=transaction/state=] is [=transaction/active=].
5627
+
5628
+
1. Set |transaction|'s [=transaction/state=] to [=transaction/inactive=].
5629
+
5630
+
<aside class=note>
5631
+
The [=/transaction=] is made [=transaction/inactive=] so that getters or other side effects triggered by the cloning operation are unable to make additional requests against the transaction.
5632
+
</aside>
5627
5633
5628
5634
1. Let |serialized| be [=?=]<a abstract-op>StructuredSerializeForStorage</a>(|value|).
5629
5635
5630
5636
1. Let |clone| be [=?=]<a abstract-op>StructuredDeserialize</a>(|serialized|, |targetRealm|).
5631
5637
5638
+
1. Set |transaction|'s [=transaction/state=] to [=transaction/active=].
0 commit comments