Skip to content

Commit

Permalink
Editorial: formalize the concept of a realm's agent
Browse files Browse the repository at this point in the history
Follows tc39/ecma262#3058. See tc39/ecma262#1357 for more background.

Adding final step to mask cross-origin

Mask preventedBFCache

Call build nrr for page from unload

fix indentation

Use set to
  • Loading branch information
syg authored and rubberyuzu committed Jul 21, 2023
1 parent 4c6cf47 commit 297f780
Showing 1 changed file with 82 additions and 1 deletion.
83 changes: 82 additions & 1 deletion source
Original file line number Diff line number Diff line change
Expand Up @@ -80509,7 +80509,8 @@ location.href = '#foo';</code></pre>

<li>
<p>Otherwise, <span>process the next manual redirect</span> for
<var>fetchController</var>.</p>
<var>fetchController</var>, and set <var>entry</var>'s <span>document state</span>'s <span
data-x="document-state-not-restored-reasons">notRestoredReasons</span> to null.</p>

<p class="note">This will result in calling the <i
data-x="processResponse">processResponse</i> we supplied above, during our first iteration
Expand Down Expand Up @@ -82069,6 +82070,80 @@ location.href = '#foo';</code></pre>
</ol>


<p>To <dfn>build NotRestoredReasons object for page</dfn> given <code>Document state</code>
<var>documentState</var>:
<ol>
<li><p><span>Assert</span>: <var>documentState</var>'s <span
data-x="document-state-document">document</span>'s <span>node navigable</span> is a
<span>top-level traversable</span>.</p></li>

<li><p><span>Build NotRestoredReasons object for document</span> given <var>documentState</var>'s
<span data-x="document-state-document">document</span>.</p></li>

<li><p>Count the number of <var>documentState</var>'s <span
data-x="document-state-document">document</span>'s <span>descendant navigables</span> whose
<span data-x="concept-document-origin">origin</span> is not <span>same origin</span> with
<var>documentState</var>'s <span data-x="document-state-document">document</span>.</p>

<ol>
<li><p>Let <var>crossOriginDescendants</var> be an empty <span>list</span>.</p></li>

<li><p><span data-x="list iterate">For each</span> <var>navigable</var> of
<var>documentState</var>'s <span data-x="document-state-document">document</span>'s
<span>descendant navigables</span>:</p>
<ol>
<li><p>If <var>navigable</var>'s <span data-x="nav-document">active document</span>'s
<span data-x="concept-document-origin">origin</span> is not <span>same origin</span> with
<var>documentState</var>'s <span data-x="document-state-document">document</span>, then <span
data-x="list append">append</span> <var>navigable</var> to
<var>crossOriginDescendants</var>.</p></li>
</ol>
</li>

<li><p>Set <var>crossOriginCount</var> be <var>crossOriginDescendants</var>'s <span
data-x="list size">size</span>.</p></li>
</ol>
</li>

<li><p>Let <var>randomIndex</var> be a randomly selected integer from 0 to
<var>crossOriginCount</var>-1.</p></li>

<li><p>Let <var>index</var> be 0.</p></li>

<li><p><span data-x="list iterate">For each</span> <var>navigable</var> of
<var>documentState</var>'s <span data-x="document-state-document">document</span>'s
<span>descendant navigables</span>:</p>
<ol>
<li><p>If <var>navigable</var>'s <span data-x="nav-document">active document</span>'s
<span data-x="concept-document-origin">origin</span> is not <span>same origin</span> with
<var>documentState</var>'s <span data-x="document-state-document">document</span>, then:</p>

<ol>
<li><p>Let <var>reasonsForCrossOriginChild</var> be <var>navigable</var>'s <span
data-x="nav-document">active document</span>'s <span>document state</span>'s <span
data-x="document-state-not-restored-reasons">notRestoredReasons</span>.</p></li>

<li><p>Set <var>reasonsForCrossOriginChild</var>'s <span
data-x="dom-not-restored-reasons-url">url</span> to null.</p></li>

<li><p>Set <var>reasonsForCrossOriginChild</var>'s <span
data-x="dom-not-restored-reasons-reasons">reasons</span> to null.</p></li>

<li><p>Set <var>reasonsForCrossOriginChild</var>'s <span
data-x="dom-not-restored-reasons-children">children</span> to null.</p></li>

<li><p>If <var>index</var> is not equal to <var>randomIndex</var>, then set
<var>reasonsForCrossOriginChild</var>'s <span
data-x="dom-not-restored-reasons-prevented-back-forward-cache">preventedBackForwardCache</span>
to "<code data-x="dom-PreventedBackForwardCache-masked">masked</code>".</p></li>

<li><p>Increment <var>index</var> by 1.</p></li>
</ol>
</li>
</ol>
</li>
</ol>

<h5>Scrolling to a fragment</h5>

<p>To <dfn id="scroll-to-the-fragment-identifier">scroll to the fragment</dfn> given a
Expand Down Expand Up @@ -83220,6 +83295,12 @@ new PaymentRequest(&hellip;); // Allowed to use
<li><p>Run any <span>unloading document cleanup steps</span> for <var>oldDocument</var> that are
defined by this specification and <span>other applicable specifications</span>.</p></li>

<li><p>If <var>oldDocument</var>'s <span>node navigable</span> is a
<span>top-level traversable</span>, <span>build NotRestoredReasons object for page</span> given
<var>oldDocument</var>'s <span>node navigable</span>'s <span
data-x="nav-active-history-entry">active session history entry</span>'s <span
data-x="she-document-state">document state</span>.</p></li>

<li><p>If <var>oldDocument</var>'s <i data-x="concept-document-salvageable">salvageable</i> state
is false, then <span data-x="destroy a document">destroy</span> <var>oldDocument</var>.</p></li>

Expand Down

0 comments on commit 297f780

Please sign in to comment.