Calling `SetWeak` like this:

global_handle.SetWeak(parameter, &X::WeakCallback, v8::WeakCallbackType::
kInternalFields);

, against a handle that contains an object with internal fields calls 
`X::WeakCallback` with the parameter and both internal fields of 
`v8::WeakCallbackInfo<v8::Global<v8::Object>>` always return `NULL`. 

Looking at 
`v8::internal::GlobalHandles::Node::PostGarbageCollectionProcessing`, which 
calls the weak callback, those internal fields are always `NULL`:

    void* embedder_fields[v8::kEmbedderFieldsInWeakCallback] = {nullptr,
                                                                nullptr};
    v8::WeakCallbackInfo<void> data(reinterpret_cast<v8::Isolate*>(isolate),
                                    parameter(), embedder_fields, nullptr);
    weak_callback_(data);


Is that some experimental feature or there's some way to make object's 
internal fields available within the weak callback?

Thanks


-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to