<div class="gmail_quote">On Thu, Mar 11, 2010 at 10:12 AM, Mikko Rantalainen <span dir="ltr">&lt;<a href="mailto:mikko.rantalainen@peda.net">mikko.rantalainen@peda.net</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im">timeless wrote:<br>
&gt; On Tue, Mar 2, 2010 at 12:50 AM, ben turner &lt;<a href="mailto:bent@mozilla.com">bent@mozilla.com</a>&gt; wrote:<br>
</div><div class="im">&gt;&gt;  - If input is a host object (e.g. a DOM node)<br>
&gt;&gt;      Return the null value.<br>
&gt;<br>
</div><div class="im">&gt; The general reason, I believe for this behavior is if you have:<br>
&gt;<br>
&gt; a=[x,y,z,q,r,s]; worker.postMessage(a) and r turns out to be window,<br>
&gt; you don&#39;t want to trigger an exception just because one value in a<br>
&gt; list is a native object.<br>
<br>
</div>Why do you think so? I&#39;d expect an exception instead of potential data<br>
loss (due to not being to able to post the actual data to the worker).<br>
I&#39;d be happy to filter the &quot;r&quot; out of the list if I need to, but I&#39;d<br>
hate to try to figure why *some* of the data I was posting does not show<br>
up at the worker. Obviously, if I know that I cannot post &quot;r&quot; and I<br>
don&#39;t want to do the filtering myself, it would be nice to have an extra<br>
parameter for postMessage() telling that it&#39;s okay to drop some data if<br>
it cannot be transferred but that should not be the default. However, I<br>
would consider that a special case and API could do just fine without<br>
such feature.<br></blockquote><div><br></div><div>FWIW, I&#39;d have to agree that throwing an exception when there&#39;s something that can&#39;t be completely serialized makes sense, but I haven&#39;t been following structured clone discussions, so I don&#39;t know whether this has come up before and if there was a good reason for what&#39;s currently being done.</div>

</div>