[Webkit-unassigned] [Bug 91535] [Chromium] Out of Memory is observed when a large object is passed to a Web Worker

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Jul 17 19:10:27 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=91535





--- Comment #6 from Dmitry Titov <dimich at chromium.org>  2012-07-17 19:10:26 PST ---
(In reply to comment #4)

Fixed everything, except:

> 
> > Source/WebCore/dom/MessageEvent.cpp:77
> > +    if (m_dataAsSerializedScriptValue)
> 
> Can we do this any other place? So that everyone who uses SerializedScriptValue will get this for free without having to know to do this.
> 
> If we do need to do something like this, is it possible to add asserts in key places (methods?) in SerializedScriptValue to make sure that this function is called when appropriate?

I thought about it and don't see a better solution... The SerializedScriptValue is created on the source thread, then passed through to the Worker - and then finally a MessageEvent is created that has actual JS wrapper and is under GC lifetime control... Also, only at that last moment SSV is in the Worker's V8 context, so the memory adjustment happens for the right heap.

I don't like using USE(V8) things, but we don't have currently a v8-specific way to customize constructing MessageEvent. The code under this ifdef is tiny, so it seems it isn't worth to create one...

I'd be glad to receive better suggestions.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list