From 923901a1cebf0b6c51627aca2a6748dee84af143 Mon Sep 17 00:00:00 2001 From: Carlos Compean Date: Mon, 11 Sep 2023 11:43:37 -0600 Subject: [PATCH] Fix build errors and a crash in xcode 15 (#2093) * Fix build errors and a crash in xcode 15 * early return if 0 or negative dimensions found --- Podfile.lock | 8 ++++---- Source/Details/ASGraphicsContext.mm | 4 ++++ Source/Details/ASThread.h | 2 +- Source/Layout/ASDimensionInternal.h | 2 +- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/Podfile.lock b/Podfile.lock index b281b28df..d32a95f74 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,6 +1,6 @@ PODS: - iOSSnapshotTestCase/Core (6.2.0) - - OCMock (3.6) + - OCMock (3.9.1) DEPENDENCIES: - iOSSnapshotTestCase/Core (~> 6.2) @@ -13,8 +13,8 @@ SPEC REPOS: SPEC CHECKSUMS: iOSSnapshotTestCase: 9ab44cb5aa62b84d31847f40680112e15ec579a6 - OCMock: 5ea90566be239f179ba766fd9fbae5885040b992 + OCMock: 9491e4bec59e0b267d52a9184ff5605995e74be8 -PODFILE CHECKSUM: 1b4ea0e8ab7d94a46b1964a2354686c2e599c8c2 +PODFILE CHECKSUM: 0a3b63450c1b52ec105545b62c41089097e077d6 -COCOAPODS: 1.10.0 +COCOAPODS: 1.12.1 diff --git a/Source/Details/ASGraphicsContext.mm b/Source/Details/ASGraphicsContext.mm index 8f543e06f..e8e7c3f83 100644 --- a/Source/Details/ASGraphicsContext.mm +++ b/Source/Details/ASGraphicsContext.mm @@ -47,6 +47,10 @@ NS_INLINE void ASConfigureExtendedRange(UIGraphicsImageRendererFormat *format) } UIImage *ASGraphicsCreateImage(ASPrimitiveTraitCollection traitCollection, CGSize size, BOOL opaque, CGFloat scale, UIImage * sourceImage, asdisplaynode_iscancelled_block_t NS_NOESCAPE isCancelled, void (NS_NOESCAPE ^work)()) { + if (size.width <= 0 || size.height <= 0) { + return nil; + } + if (AS_AVAILABLE_IOS_TVOS(10, 10)) { if (ASActivateExperimentalFeature(ASExperimentalDrawingGlobal)) { // If they used default scale, reuse one of two preferred formats. diff --git a/Source/Details/ASThread.h b/Source/Details/ASThread.h index 0ef3d325a..d5187a358 100644 --- a/Source/Details/ASThread.h +++ b/Source/Details/ASThread.h @@ -20,7 +20,7 @@ #import #import -ASDISPLAYNODE_INLINE AS_WARN_UNUSED_RESULT BOOL ASDisplayNodeThreadIsMain() +ASDISPLAYNODE_INLINE AS_WARN_UNUSED_RESULT BOOL ASDisplayNodeThreadIsMain(void) { return 0 != pthread_main_np(); } diff --git a/Source/Layout/ASDimensionInternal.h b/Source/Layout/ASDimensionInternal.h index dced2ffae..51dcdf75b 100644 --- a/Source/Layout/ASDimensionInternal.h +++ b/Source/Layout/ASDimensionInternal.h @@ -38,7 +38,7 @@ typedef struct { /** * Returns an ASLayoutElementSize with default values. */ -ASDISPLAYNODE_INLINE AS_WARN_UNUSED_RESULT ASLayoutElementSize ASLayoutElementSizeMake() +ASDISPLAYNODE_INLINE AS_WARN_UNUSED_RESULT ASLayoutElementSize ASLayoutElementSizeMake(void) { return (ASLayoutElementSize){ .width = ASDimensionAuto,