Skip to content

Commit 491c423

Browse files
sammy-SCfacebook-github-bot
authored andcommitted
Pass raw ShadowNode instead of shared_ptr
Summary: changelog: [internal] pass raw ShadowNode instead of shared_ptr. Ownership is not transferred, shared_ptr is misleading. Reviewed By: javache Differential Revision: D33917010 fbshipit-source-id: 4d9fdd4b4e0376149f1719ad160b957de4afdce3
1 parent 6584304 commit 491c423

File tree

3 files changed

+16
-16
lines changed

3 files changed

+16
-16
lines changed

ReactCommon/react/renderer/uimanager/UIManager.cpp

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -94,28 +94,27 @@ SharedShadowNode UIManager::createNode(
9494
}
9595

9696
SharedShadowNode UIManager::cloneNode(
97-
const ShadowNode::Shared &shadowNode,
98-
const SharedShadowNodeSharedList &children,
99-
const RawProps *rawProps) const {
97+
ShadowNode const &shadowNode,
98+
SharedShadowNodeSharedList const &children,
99+
RawProps const *rawProps) const {
100100
SystraceSection s("UIManager::cloneNode");
101101

102102
PropsParserContext propsParserContext{
103-
shadowNode->getFamily().getSurfaceId(), *contextContainer_.get()};
103+
shadowNode.getFamily().getSurfaceId(), *contextContainer_.get()};
104104

105-
auto &componentDescriptor = shadowNode->getComponentDescriptor();
105+
auto &componentDescriptor = shadowNode.getComponentDescriptor();
106106
auto clonedShadowNode = componentDescriptor.cloneShadowNode(
107-
*shadowNode,
107+
shadowNode,
108108
{
109109
/* .props = */
110110
rawProps ? componentDescriptor.cloneProps(
111-
propsParserContext, shadowNode->getProps(), *rawProps)
111+
propsParserContext, shadowNode.getProps(), *rawProps)
112112
: ShadowNodeFragment::propsPlaceholder(),
113113
/* .children = */ children,
114114
});
115115

116116
if (delegate_) {
117-
delegate_->uiManagerDidCloneShadowNode(
118-
*shadowNode.get(), *clonedShadowNode);
117+
delegate_->uiManagerDidCloneShadowNode(shadowNode, *clonedShadowNode);
119118
}
120119

121120
return clonedShadowNode;

ReactCommon/react/renderer/uimanager/UIManager.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -127,9 +127,9 @@ class UIManager final : public ShadowTreeDelegate {
127127
SharedEventTarget eventTarget) const;
128128

129129
ShadowNode::Shared cloneNode(
130-
const ShadowNode::Shared &shadowNode,
131-
const SharedShadowNodeSharedList &children = nullptr,
132-
const RawProps *rawProps = nullptr) const;
130+
ShadowNode const &shadowNode,
131+
SharedShadowNodeSharedList const &children = nullptr,
132+
RawProps const *rawProps = nullptr) const;
133133

134134
void appendChild(
135135
const ShadowNode::Shared &parentShadowNode,

ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -220,7 +220,8 @@ jsi::Value UIManagerBinding::get(
220220
size_t count) noexcept -> jsi::Value {
221221
return valueFromShadowNode(
222222
runtime,
223-
uiManager->cloneNode(shadowNodeFromValue(runtime, arguments[0])));
223+
uiManager->cloneNode(
224+
*shadowNodeFromValue(runtime, arguments[0])));
224225
});
225226
}
226227

@@ -287,7 +288,7 @@ jsi::Value UIManagerBinding::get(
287288
return valueFromShadowNode(
288289
runtime,
289290
uiManager->cloneNode(
290-
shadowNodeFromValue(runtime, arguments[0]),
291+
*shadowNodeFromValue(runtime, arguments[0]),
291292
ShadowNode::emptySharedShadowNodeSharedList()));
292293
});
293294
}
@@ -307,7 +308,7 @@ jsi::Value UIManagerBinding::get(
307308
return valueFromShadowNode(
308309
runtime,
309310
uiManager->cloneNode(
310-
shadowNodeFromValue(runtime, arguments[0]),
311+
*shadowNodeFromValue(runtime, arguments[0]),
311312
nullptr,
312313
&rawProps));
313314
});
@@ -328,7 +329,7 @@ jsi::Value UIManagerBinding::get(
328329
return valueFromShadowNode(
329330
runtime,
330331
uiManager->cloneNode(
331-
shadowNodeFromValue(runtime, arguments[0]),
332+
*shadowNodeFromValue(runtime, arguments[0]),
332333
ShadowNode::emptySharedShadowNodeSharedList(),
333334
&rawProps));
334335
});

0 commit comments

Comments
 (0)