Re: [w3c/manifest] Processing the manifest is no longer a function of document URL (#834)

mgiuca commented on this pull request.



> @@ -1492,8 +1494,7 @@ <h3>
           </li>
           <li>Set <var>manifest</var>["<a>start_url</a>"] to the result of
           running <a>processing the <code>start_url</code> member</a> given
-          <var>manifest</var>["<a>start_url</a>"], <var>manifest URL</var>, and
-          <var>document URL</var>.
+          <var>manifest</var>["<a>start_url</a>"] and <var>manifest URL</var>.
           </li>
           <li>Set <var>manifest</var>["<a>lang</a>"] to the result of running
           <a>processing the <code>lang</code> member</a> given

Specs don't segfault :)

This is WAI. "undefined" here doesn't mean set it to nullptr in C++. It means (according to [how a JS value is converted into a dictionary member](https://heycam.github.io/webidl/#es-dictionary)) to leave it empty as if the key didn't exist at all. So this logic means to treat an invalid `start_url` exactly the same as a missing `start_url`.

(Note that the WebIDL data structure permits only two options for `start_url`: missing or a valid-but-possibly-empty string. So it should not be possible to store some other null-type value in here.)

C++ implementations should make sure this is the case and of course not segfault.

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/w3c/manifest/pull/834#discussion_r368379500

Received on Monday, 20 January 2020 05:57:10 UTC