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-11Lines changed: 16 additions & 11 deletions
Original file line number
Diff line number
Diff line change
@@ -1512,20 +1512,25 @@ A [=blob URL store=] is a [=map=]
1512
1512
where [=map/keys=] are [=valid URL strings=]
1513
1513
and [=map/values=] are [=blob URL Entries=].
1514
1514
1515
+
A <dfn export>blob URL entry</dfn> consists of an <i>object</i> (of type {{Blob}} or
1516
+
{{MediaSource}}), and an <dfn export for="blob URL entry">environment</dfn> (an
1517
+
[=environment settings object=]).
1518
+
1519
+
Note: Specifications must use the [=obtain a blob object=] algorithm to access a
1520
+
[=blob URL entry=]'s <i>object</i>.
1521
+
1515
1522
[=map/Keys=] in the [=blob URL store=] (also known as <dfn lt="blob URL|object URL" export>blob URLs</dfn>)
1516
1523
are [=valid URL strings=] that when [=URL parser|parsed=]
1517
1524
result in a [=/URL=] with a [=url/scheme=] equal to "`blob`",
1518
1525
an [=empty host=], and a [=url/path=] consisting of one element itself also a [=valid URL string=].
1519
1526
1520
-
A <dfn export>blob URL entry</dfn> is used to store an object of type {{Blob}} or {{MediaSource}}.
1521
-
1522
-
A [=blob URL entry=] has an <dfn export for="blob URL entry">environment</dfn> (an [=environment settings object=]).
1523
-
1524
1527
<div algorithm="obtainBlobObject">
1525
-
To <dfn export id=blob-url-obtain-object>obtain a blob object</dfn> given a [=blob URL entry=] |blobUrlEntry|, an [=environment=] |environment|, and an optional boolean |isNavigation| (default false):
1528
+
To <dfn export id=blob-url-obtain-object>obtain a blob object</dfn> given a [=blob URL entry=]
1529
+
|blobUrlEntry|, an [=environment=] or the string "`navigation`" |environment|:
1526
1530
1527
1531
1. Let |isAuthorized| be true.
1528
-
1. If |isNavigation| is false, let |isAuthorized| be the result of [=checking for same-partition blob URL usage=] with |blobUrlEntry| and |environment|.
1532
+
1. If |environment| is not the string "`navigation`", then set |isAuthorized| to the result of
1533
+
[=checking for same-partition blob URL usage=] with |blobUrlEntry| and |environment|.
1529
1534
1. If |isAuthorized| is false, then return failure.
1530
1535
1. Return |blobUrlEntry|'s object.
1531
1536
@@ -1656,12 +1661,12 @@ return the result of [=adding an entry to the blob URL store=] for |obj|.
1656
1661
<div algorithm="revokeObjectURL">
1657
1662
The <dfn method for=URL id="dfn-revokeObjectURL">revokeObjectURL(|url|)</dfn> static method must run these steps:
1658
1663
1659
-
1. Let |url record| be the result of [=URL parser|parsing=] |url|.
1660
-
1. If |url record|'s [=url/scheme=] is not "`blob`", return.
1661
-
1. Let |entry| be |url record|'s [=blob URL entry=].
1662
-
1. If |entry| is null, return.
1664
+
1. Let |urlRecord| be the result of [=URL parser|parsing=] |url|.
1665
+
1. If |urlRecord|'s [=url/scheme=] is not "`blob`", return.
1666
+
1. Let |entry| be |urlRecord|'s [=blob URL entry=].
1667
+
1. If |entry| is null, then return.
1663
1668
1. Let |isAuthorized| be the result of [=checking for same-partition blob URL usage=] with |entry| and the [=current settings object=].
1664
-
1. If |isAuthorized| is false, return.
1669
+
1. If |isAuthorized| is false, then return.
1665
1670
1. [=Remove an entry from the Blob URL Store=] for |url|.
1666
1671
1667
1672
Note: This means that rather than throwing some kind of error, attempting to revoke a URL that isn't registered or that was registered from an environment in a different storage partition will silently fail.
0 commit comments