Skip to content

Commit 2e4978c

Browse files
committed
review comments
1 parent 87125c2 commit 2e4978c

File tree

4 files changed

+15
-17
lines changed

4 files changed

+15
-17
lines changed

lib/Jsrt/Core/JsrtCore.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -735,10 +735,10 @@ CHAKRA_API JsCloneObject(_In_ JsValueRef source, _Out_ JsValueRef* newObject)
735735
VALIDATE_JSREF(source);
736736

737737
return ContextAPINoScriptWrapper([&](Js::ScriptContext* scriptContext, TTDRecorder& _actionEntryPopper) -> JsErrorCode {
738-
Js::JavascriptProxy* proxy = Js::JavascriptOperators::TryFromVar<Js::JavascriptProxy>(source);
739-
if (proxy != nullptr)
738+
739+
while (Js::VarIs<Js::JavascriptProxy>(source))
740740
{
741-
source = proxy->GetTarget();
741+
source = Js::UnsafeVarTo<Js::JavascriptProxy>(source)->GetTarget();
742742
}
743743

744744
// We can currently only clone certain types of dynamic objects

lib/Jsrt/Jsrt.cpp

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2723,9 +2723,9 @@ CHAKRA_API JsHasExternalData(_In_ JsValueRef object, _Out_ bool *value)
27232723

27242724
BEGIN_JSRT_NO_EXCEPTION
27252725
{
2726-
if (Js::VarIs<Js::JavascriptProxy>(object))
2726+
while (Js::VarIs<Js::JavascriptProxy>(object))
27272727
{
2728-
object = Js::VarTo<Js::JavascriptProxy>(object);
2728+
object = Js::UnsafeVarTo<Js::JavascriptProxy>(object);
27292729
}
27302730
*value = (Js::VarIs<JsrtExternalObject>(object)
27312731
#ifdef _CHAKRACOREBUILD
@@ -2743,18 +2743,18 @@ CHAKRA_API JsGetExternalData(_In_ JsValueRef object, _Out_ void **data)
27432743

27442744
BEGIN_JSRT_NO_EXCEPTION
27452745
{
2746-
if (Js::VarIs<Js::JavascriptProxy>(object))
2746+
while (Js::VarIs<Js::JavascriptProxy>(object))
27472747
{
2748-
object = Js::VarTo<Js::JavascriptProxy>(object)->GetTarget();
2748+
object = Js::UnsafeVarTo<Js::JavascriptProxy>(object)->GetTarget();
27492749
}
27502750
if (Js::VarIs<JsrtExternalObject>(object))
27512751
{
2752-
*data = Js::VarTo<JsrtExternalObject>(object)->GetSlotData();
2752+
*data = Js::UnsafeVarTo<JsrtExternalObject>(object)->GetSlotData();
27532753
}
27542754
#ifdef _CHAKRACOREBUILD
27552755
else if (Js::VarIs<Js::CustomExternalWrapperObject>(object))
27562756
{
2757-
*data = Js::VarTo<Js::CustomExternalWrapperObject>(object)->GetSlotData();
2757+
*data = Js::UnsafeVarTo<Js::CustomExternalWrapperObject>(object)->GetSlotData();
27582758
}
27592759
#endif
27602760
else
@@ -2772,18 +2772,18 @@ CHAKRA_API JsSetExternalData(_In_ JsValueRef object, _In_opt_ void *data)
27722772

27732773
BEGIN_JSRT_NO_EXCEPTION
27742774
{
2775-
if (Js::VarIs<Js::JavascriptProxy>(object))
2775+
while (Js::VarIs<Js::JavascriptProxy>(object))
27762776
{
2777-
object = Js::VarTo<Js::JavascriptProxy>(object)->GetTarget();
2777+
object = Js::UnsafeVarTo<Js::JavascriptProxy>(object)->GetTarget();
27782778
}
27792779
if (Js::VarIs<JsrtExternalObject>(object))
27802780
{
2781-
Js::VarTo<JsrtExternalObject>(object)->SetSlotData(data);
2781+
Js::UnsafeVarTo<JsrtExternalObject>(object)->SetSlotData(data);
27822782
}
27832783
#ifdef _CHAKRACOREBUILD
27842784
else if (Js::VarIs<Js::CustomExternalWrapperObject>(object))
27852785
{
2786-
Js::VarTo<Js::CustomExternalWrapperObject>(object)->SetSlotData(data);
2786+
Js::UnsafeVarTo<Js::CustomExternalWrapperObject>(object)->SetSlotData(data);
27872787
}
27882788
#endif
27892789
else

lib/Jsrt/JsrtExternalObject.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -157,8 +157,7 @@ JsrtExternalObject* JsrtExternalObject::Create(void *data, uint inlineSlotSize,
157157
return externalObject;
158158
}
159159

160-
JsrtExternalObject*
161-
JsrtExternalObject::Copy(bool deepCopy)
160+
JsrtExternalObject* JsrtExternalObject::Copy(bool deepCopy)
162161
{
163162
Recycler* recycler = this->GetRecycler();
164163
JsrtExternalType* type = this->GetExternalType();

lib/Runtime/Library/CustomExternalWrapperObject.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -140,8 +140,7 @@ BOOL CustomExternalWrapperObject::EnsureInitialized(ScriptContext* requestContex
140140
return TRUE;
141141
}
142142

143-
CustomExternalWrapperObject*
144-
CustomExternalWrapperObject::Copy(bool deepCopy)
143+
CustomExternalWrapperObject* CustomExternalWrapperObject::Copy(bool deepCopy)
145144
{
146145
Recycler* recycler = this->GetRecycler();
147146
CustomExternalWrapperType* externalType = this->GetExternalType();

0 commit comments

Comments
 (0)