https://codereview.chromium.org/196103004/diff/20001/include/v8.h
File include/v8.h (right):
https://codereview.chromium.org/196103004/diff/20001/include/v8.h#newcode2001
include/v8.h:2001: // Create a symbol. If data is not NULL, it will be
used as a print name.
On 2014/03/24 10:04:33, Michael Starzinger wrote:
nit: Comment is outdated.
Done.
https://codereview.chromium.org/196103004/diff/20001/include/v8.h#newcode2024
include/v8.h:2024: // Create a private symbol. If data is not NULL, it
will be the print name.
On 2014/03/24 10:04:33, Michael Starzinger wrote:
nit: Likewise.
Done.
https://codereview.chromium.org/196103004/diff/20001/include/v8.h#newcode2035
include/v8.h:2035: static Local<Private> Global(Isolate *isolate,
Local<String> name);
On 2014/03/24 10:04:33, Michael Starzinger wrote:
Using this name there is the risk that it gets confused with the
"global object"
and Context::Global() specifically.
Renamed to ForApi. Also added Symbol::For and Symbol::ForApi.
https://codereview.chromium.org/196103004/diff/20001/src/runtime.cc
File src/runtime.cc (right):
https://codereview.chromium.org/196103004/diff/20001/src/runtime.cc#newcode637
src/runtime.cc:637:
isolate->factory()->NewJSObject(isolate->object_function(), TENURED);
On 2014/03/24 10:04:33, Michael Starzinger wrote:
As discussed offline: This will create a JSObject bound to a specific
context
(i.e. obj->map->constructor) and hence keep the native context which
happened to
trigger this lazy initialization alive forever.
And you are right, we have the same problem already in the lazy
initialization
in the symbol.js file.
I moved the whole registry creation and initialization to a new method
Isolate::GetSymbolRegistry, which is now shared by all relevant code
sites.
https://codereview.chromium.org/196103004/
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.