@@ -96556,7 +96556,9 @@ interface <dfn>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope</span> {
96556
96556
data-dfn-for="SharedWorkerGlobalScope"
96557
96557
data-x="concept-SharedWorkerGlobalScope-constructor-url">constructor url</dfn> and <dfn
96558
96558
data-dfn-for="SharedWorkerGlobalScope"
96559
- data-x="concept-SharedWorkerGlobalScope-name">name</dfn>.
96559
+ data-x="concept-SharedWorkerGlobalScope-name">name</dfn>. They are initialized when the
96560
+ <code>SharedWorkerGlobalScope</code> object is created, in the <span>run a worker</span>
96561
+ algorithm.
96560
96562
96561
96563
<p>Shared workers receive message ports through <code
96562
96564
data-x="event-WorkerGlobalScope-connect">connect</code> events on their <code>SharedWorkerGlobalScope</code> object for each
@@ -96712,8 +96714,9 @@ interface <dfn>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope</span> {
96712
96714
<p>When a user agent is to <dfn data-export="">run a worker</dfn> for a script with
96713
96715
<code>Worker</code> or <code>SharedWorker</code> object <var>worker</var>, <span>URL</span>
96714
96716
<var>url</var>, <span>environment settings object</span> <var>outside settings</var>,
96715
- <code>MessagePort</code> <var>outside port</var>, and a <code>WorkerOptions</code> dictionary
96716
- <var>options</var>, it must run the following steps:</p>
96717
+ <code>MessagePort</code> <var>outside port</var>, a <code>WorkerOptions</code> dictionary
96718
+ <var>options</var>, and an optional string <var>name</var>, it must run the following steps.
96719
+ (<var>name</var> is always be provided when <var>worker</var> is a <code>SharedWorker</code>.)</p>
96717
96720
96718
96721
<ol>
96719
96722
@@ -96760,6 +96763,19 @@ interface <dfn>SharedWorkerGlobalScope</dfn> : <span>WorkerGlobalScope</span> {
96760
96763
context</var> and <var>outside settings</var>, and let <var>inside settings</var> be the
96761
96764
result.</p></li>
96762
96765
96766
+ <li>
96767
+ <p>If <var>is shared</var> is true, then:</p>
96768
+
96769
+ <ol>
96770
+ <li><p>Set <var>worker global scope</var>'s <span
96771
+ data-x="concept-SharedWorkerGlobalScope-constructor-url">constructor url</span> to
96772
+ <var>url</var>.</p></li>
96773
+
96774
+ <li><p>Set <var>worker global scope</var>'s <span
96775
+ data-x="concept-SharedWorkerGlobalScope-name">name</span> to <var>name</var>.</p></li>
96776
+ </ol>
96777
+ </li>
96778
+
96763
96779
<li><p>Let <var>destination</var> be "<code data-x="">sharedworker</code>" if <var>is
96764
96780
shared</var> is true, and "<code data-x="">worker</code>" otherwise.</p></li>
96765
96781
@@ -97360,8 +97376,7 @@ interface <dfn>SharedWorker</dfn> : <span>EventTarget</span> {
97360
97376
and abort these steps.</p></li>
97361
97377
97362
97378
<li>
97363
- <p>Let <var>urlString</var> be the <span>resulting URL string</span> and <var>urlRecord</var> be
97364
- the <span>resulting URL record</span>.</p>
97379
+ <p>Otherwise, let <var>urlRecord</var> be the <span>resulting URL record</span>.</p>
97365
97380
97366
97381
<p class="note">Any <span data-x="same origin">same-origin</span> URL will do, including <code
97367
97382
data-x="blob protocol">blob:</code> URLs.</p>
@@ -97388,12 +97403,12 @@ interface <dfn>SharedWorker</dfn> : <span>EventTarget</span> {
97388
97403
<li><p>If there exists a <code>SharedWorkerGlobalScope</code> object whose <span
97389
97404
data-x="dom-WorkerGlobalScope-closing">closing</span> flag is false, whose <span
97390
97405
data-x="concept-SharedWorkerGlobalScope-name">name</span> is exactly equal to <var>name</var>,
97391
- whose <span data-x="concept-SharedWorkerGlobalScope-constructor-url">constructor url</span> is
97392
- equal to <var>urlString </var>, and whose <span>relevant settings object</span>'s
97393
- < span data-x="concept-settings-object-origin">origin</span> is <span>same origin</span> with
97394
- <var>outside settings</var>'s <span data-x="concept-settings-object-origin">origin</span>, then
97395
- set <var>worker global scope</var> to that <code>SharedWorkerGlobalScope</code >
97396
- object.</p></li>
97406
+ whose <span data-x="concept-SharedWorkerGlobalScope-constructor-url">constructor url</span>
97407
+ <span data-x="concept-url-equals">equals</span> <var>urlRecord </var>, and whose <span>relevant
97408
+ settings object</ span>'s <span data-x="concept-settings-object-origin">origin</span> is
97409
+ <span>same origin</span> with < var>outside settings</var>'s <span
97410
+ data-x="concept-settings-object-origin">origin</span>, then set <var>worker global scope</var>
97411
+ to that <code>SharedWorkerGlobalScope</code> object.</p></li>
97397
97412
97398
97413
<li>
97399
97414
<p>If <var>worker global scope</var> is not null, but the user agent has been
@@ -97454,7 +97469,8 @@ interface <dfn>SharedWorker</dfn> : <span>EventTarget</span> {
97454
97469
</li>
97455
97470
97456
97471
<li><p>Otherwise, <span>run a worker</span> given <var>worker</var>, <var>urlRecord</var>,
97457
- <var>outside settings</var>, <var>outside port</var>, and <var>options</var>.</p></li>
97472
+ <var>outside settings</var>, <var>outside port</var>, <var>options</var>, and
97473
+ <var>name</var>.</p></li>
97458
97474
</ol>
97459
97475
</li>
97460
97476
0 commit comments