On Tue, 27 Jan 2009 19:42:50 +0100, Steve Block <[email protected]> wrote:
The people who did this is really hard to get hold of so I'll try to answer these questions myself. Patch attached.
======================================================================== http://mondrian.corp.google.com/file/9464280///depot/googleclient/gears/opensource/gears/base/common/js_runner.h?a=4File //depot/googleclient/gears/opensource/gears/base/common/js_runner.h (snapshot 4)------------------------------------ Line 104: virtual void ClearThreadIdentifier(){}Do these methods need to be part of JsRunnerInterface? Could they be part ofonly the NPAPI implementation of JsRunnerBase?
Fixed.
======================================================================== http://mondrian.corp.google.com/file/9464280///depot/googleclient/gears/opensource/gears/base/common/js_runner_np.cc?a=1File //depot/googleclient/gears/opensource/gears/base/common/js_runner_np.cc (snapshot 1)------------------------------------ Line 223: SetThreadIdentifier(); Tabs
Fixed.
------------------------------------ Line 642: // common functionality to both workers and the main thread. I think this comment is incorrect - this a version of JsRunner, right?
Fixed.
------------------------------------ Line 645: OperaJsRunner(NPP instance, void* object) Rather than passing the global object through to this function from OperaWorkerThreadImpl::CreateWorkerFactory, could you add a method toOperaGearsApiInterface to get the global object? That way, we wouldn't need a new version of NewJsRunner?
No, the global object is what identifies each worker thread in Opera and we need to be told that when Gears does script related calls to Opera.
======================================================================== http://mondrian.corp.google.com/file/9464280///depot/googleclient/gears/opensource/gears/base/common/js_types.h?a=4File //depot/googleclient/gears/opensource/gears/base/common/js_types.h (snapshot 4)------------------------------------ Line 548: NPObject *js_object() { return object_; }Is this method used outside of this class? If not, do we need a public method?========================================================================
Fixed. -- Stig Halvorsen Senior Core Developer Opera Software ASA
js_runner.patch
Description: Binary data
