spec/Overview.html 1.2069 2901 navigator.releaseLock() (whatwg r2901)

navigator.releaseLock() (whatwg r2901)

5.7.3 Manually releasing the storage mutex
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#manually-releasing-the-storage-mutex
registerContentHandler()
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#dom-navigator-registercontenthandler
5.7.3.2 Sample user interface
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#sample-handler-impl
releaseLock()
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#dom-navigator-releaselock
5.7.3.1 Security and privacy
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#security-and-privacy
NavigatorAbilities
http://people.w3.org/mike/diffs/html5/spec/Overview.1.2069.html#navigatorabilities

http://people.w3.org/mike/diffs/html5/spec/Overview.diff.html
http://dev.w3.org/cvsweb/html5/spec/Overview.html?r1=1.2068&r2=1.2069&f=h
http://html5.org/tools/web-apps-tracker?from=2900&to=2901

===================================================================
RCS file: /sources/public/html5/spec/Overview.html,v
retrieving revision 1.2068
retrieving revision 1.2069
diff -u -d -r1.2068 -r1.2069
--- Overview.html 24 Mar 2009 08:15:19 -0000 1.2068
+++ Overview.html 24 Mar 2009 08:45:35 -0000 1.2069
@@ -763,10 +763,11 @@
    <li><a href=#system-state-and-capabilities><span class=secno>5.7 </span>System state and capabilities</a>
     <ol>
      <li><a href=#client-identification><span class=secno>5.7.1 </span>Client identification</a></li>
-     <li><a href=#custom-handlers><span class=secno>5.7.2 </span>Custom protocol and content handlers</a>
+     <li><a href=#custom-handlers><span class=secno>5.7.2 </span>Custom protocol and content handlers</a></li>
+     <li><a href=#manually-releasing-the-storage-mutex><span class=secno>5.7.3 </span>Manually releasing the storage mutex</a>
       <ol>
-       <li><a href=#security-and-privacy><span class=secno>5.7.2.1 </span>Security and privacy</a></li>
-       <li><a href=#sample-handler-impl><span class=secno>5.7.2.2 </span>Sample user interface</a></ol></ol></li>
+       <li><a href=#security-and-privacy><span class=secno>5.7.3.1 </span>Security and privacy</a></li>
+       <li><a href=#sample-handler-impl><span class=secno>5.7.3.2 </span>Sample user interface</a></ol></ol></li>
    <li><a href=#offline><span class=secno>5.8 </span>Offline Web applications</a>
     <ol>
      <li><a href=#introduction-2><span class=secno>5.8.1 </span>Introduction</a></li>
@@ -37017,6 +37018,7 @@
   // content handler registration
   void <a href=#dom-navigator-registerprotocolhandler title=dom-navigator-registerProtocolHandler>registerProtocolHandler</a>(in DOMString protocol, in DOMString url, in DOMString title);
   void <a href=#dom-navigator-registercontenthandler title=dom-navigator-registerContentHandler>registerContentHandler</a>(in DOMString mimeType, in DOMString url, in DOMString title);
+  void <a href=#dom-navigator-releaselock title=dom-navigator-releaseLock>releaseLock</a>();
 <!--  XXX cookieEnabled geolocator javaEnabled mozIsLocallyAvailable preference
   readonly attribute <span>MimeTypeArray</span> <span title="dom-navigator-mimeTypes">mimeTypes</span>;
   readonly attribute <span>PluginArray</span> <span title="dom-navigator-plugins">plugins</span>;
@@ -37026,9 +37028,9 @@
   <p>Objects implementing the <code><a href=#navigator>Navigator</a></code> interface must
   also implement the <a href=#navigatorid>NavigatorID</a>,
   <a href=#navigatoronline>NavigatorOnLine</a>, and
-  <a href=#navigatorabilities>NavigatorAbilities</a> interfaces. (These
-  interfaces are defined separately so that other specifications can
-  re-use parts of the <code><a href=#navigator>Navigator</a></code> interface.)</p>
+  <a href=#navigatorabilities>NavigatorAbilities</a> interfaces. (These interfaces are
+  defined separately so that other specifications can re-use parts of
+  the <code><a href=#navigator>Navigator</a></code> interface.)</p>
 
    <!-- XXX also, see window.external.AddSearchProvider() and similar DOM APIs from IE -->
 
@@ -37272,9 +37274,36 @@
   part of any non-idempotent transaction), as the remote site would
   not be able to fetch the same data.</p>
 
+  </div><h4 id=manually-releasing-the-storage-mutex><span class=secno>5.7.3 </span>Manually releasing the storage mutex</h4><dl class=domintro><dt><var title="">window</var> . <code title=dom-navigator><a href=#dom-navigator>navigator</a></code> . <code title=dom-navigator-releaseLock><a href=#dom-navigator-releaselock>releaseLock</a></code>()</dt>
+
+   <dd>
+
+    <p>If a script uses the <code title=dom-document-cookie><a href=#dom-document-cookie>document.cookie</a></code> API, or the
+    <code title=dom-localStorage>localStorage</code> API, the
+    browser will block other scripts from accessing cookies or storage
+    until the first script finishes.</p>
+
+    <p>Calling the <code title=dom-navigator-releaseLock><a href=#dom-navigator-releaselock>navigator.releaseLock()</a></code>
+    method tells the user agent to unblock any other scripts that may
+    be blocked, even though the script hasn't returned.</p>
+
+    <p>Values of cookies and items in the <code>Storage</code> objects
+    of <code title=dom-localStorage>localStorage</code> attributes
+    can change after calling this method.</p>
+
+   </dd>
+
+  </dl><div class=impl>
+
+   <p>The <dfn id=dom-navigator-releaselock title=dom-navigator-releaseLock><code>releaseLock()</code></dfn>
+   method, when invoked, must, if the <a href=#storage-mutex>storage mutex</a> is
+   owned by the <a href=#event-loop>event loop</a> of the <a href=#concept-task title=concept-task>task</a> that resulted in the method being
+   called, release the <a href=#storage-mutex>storage mutex</a> so that it is once
+   again free. Otherwise, it must do nothing.</p>
+
   </div><div class=impl>
 
-  <h5 id=security-and-privacy><span class=secno>5.7.2.1 </span>Security and privacy</h5>
+  <h5 id=security-and-privacy><span class=secno>5.7.3.1 </span>Security and privacy</h5>
 
   <p>These mechanisms can introduce a number of concerns, in
   particular privacy concerns.</p>
@@ -37355,7 +37384,7 @@
 
   </div><div class=impl>
 
-  <h5 id=sample-handler-impl><span class=secno>5.7.2.2 </span>Sample user interface</h5>
+  <h5 id=sample-handler-impl><span class=secno>5.7.3.2 </span>Sample user interface</h5>
 
   <p><em>This section is non-normative.</em></p>

Received on Tuesday, 24 March 2009 08:48:16 UTC