mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
Fabric: Small simplification in UIView+ComponentViewProtocol
Summary: Now we use `std::isfinite` instead of a pair of `std::isnan` and `std::isinf` which improves readability. Reviewed By: sammy-SC Differential Revision: D17312174 fbshipit-source-id: 76175524de566745962e96e46effe0bce52a09ad
This commit is contained in:
committed by
Facebook Github Bot
parent
fc0b03a0d1
commit
9490ca66dd
@@ -71,9 +71,8 @@ using namespace facebook::react;
|
||||
if (layoutMetrics.frame != oldLayoutMetrics.frame) {
|
||||
CGRect frame = RCTCGRectFromRect(layoutMetrics.frame);
|
||||
|
||||
if (std::isnan(frame.origin.x) || std::isnan(frame.origin.y) || std::isnan(frame.size.width) ||
|
||||
std::isnan(frame.size.height) || std::isinf(frame.origin.x) || std::isinf(frame.origin.y) ||
|
||||
std::isinf(frame.size.width) || std::isinf(frame.size.height)) {
|
||||
if (!std::isfinite(frame.origin.x) || !std::isfinite(frame.origin.y) || !std::isfinite(frame.size.width) ||
|
||||
!std::isfinite(frame.size.height)) {
|
||||
// CALayer will crash if we pass NaN or Inf values.
|
||||
// It's unclear how to detect this case on cross-platform manner holistically, so we have to do it on the mounting
|
||||
// layer as well. NaN/Inf is a kinda valid result of some math operations. Even if we can (and should) detect (and
|
||||
|
||||
Reference in New Issue
Block a user