Skip to content

Commit f93c8b6

Browse files
author
Mihail Slavchev
committed
replace JS symbols with V8 hidden values in order to be compliant with node-inspector
1 parent cf36b9c commit f93c8b6

File tree

2 files changed

+8
-8
lines changed

2 files changed

+8
-8
lines changed

src/jni/MetadataNode.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ void MetadataNode::SubscribeCallbacks(ObjectManager *objectManager,
3737
s_getArrayLength = getArrayLengthCallback;
3838

3939
auto isolate = Isolate::GetCurrent();
40-
auto key = Symbol::New(isolate, ConvertToV8String("tns::MetadataKey"));
41-
s_metadataKey = new Persistent<Symbol>(isolate, key);
40+
auto key = ConvertToV8String("tns::MetadataKey");
41+
s_metadataKey = new Persistent<String>(isolate, key);
4242
}
4343

4444

@@ -635,8 +635,8 @@ void MetadataNode::SetTypeMetadata(Isolate *isolate, Handle<Function> value, Typ
635635
MetadataNode* MetadataNode::GetInstanceMetadata(Isolate *isolate, const Handle<Object>& value)
636636
{
637637
MetadataNode *node = nullptr;
638-
auto key = Local<Symbol>::New(isolate, *s_metadataKey);
639-
auto ext = value->Get(key);
638+
auto key = Local<String>::New(isolate, *s_metadataKey);
639+
auto ext = value->GetHiddenValue(key);
640640
if (!ext.IsEmpty())
641641
{
642642
node = reinterpret_cast<MetadataNode*>(ext.As<External>()->Value());
@@ -646,8 +646,8 @@ MetadataNode* MetadataNode::GetInstanceMetadata(Isolate *isolate, const Handle<O
646646

647647
void MetadataNode::SetInstanceMetadata(Isolate *isolate, Handle<Object> value, MetadataNode *node)
648648
{
649-
auto key = Local<Symbol>::New(isolate, *s_metadataKey);
650-
value->Set(key, External::New(isolate, node));
649+
auto key = Local<String>::New(isolate, *s_metadataKey);
650+
value->SetHiddenValue(key, External::New(isolate, node));
651651
}
652652

653653
MetadataNode* MetadataNode::GetPackageMetadata(Isolate *isolate, const Handle<Object>& value)
@@ -1280,6 +1280,6 @@ string MetadataNode::TNS_PREFIX = "com/tns/gen/";
12801280
MetadataReader MetadataNode::s_metadataReader;
12811281
ObjectManager* MetadataNode::s_objectManager = nullptr;
12821282

1283-
Persistent<Symbol>* MetadataNode::s_metadataKey = nullptr;
1283+
Persistent<String>* MetadataNode::s_metadataKey = nullptr;
12841284
map<MetadataTreeNode*, Persistent<FunctionTemplate>*> MetadataNode::s_ctorFuncCache;
12851285
map<string, MetadataNode::ExtendedClassCacheData> MetadataNode::s_extendedCtorFuncCache;

src/jni/MetadataNode.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ namespace tns
259259

260260
static MetadataReader s_metadataReader;
261261

262-
static v8::Persistent<v8::Symbol> *s_metadataKey;
262+
static v8::Persistent<v8::String> *s_metadataKey;
263263

264264
static ObjectManager *s_objectManager;
265265

0 commit comments

Comments
 (0)