Title: [283517] trunk/Tools
Revision
283517
Author
[email protected]
Date
2021-10-04 15:41:27 -0700 (Mon, 04 Oct 2021)

Log Message

Follow-up: WTF::RetainPtr<> allows assignment of two pointer types that are not assignable
<https://webkit.org/b/230406>
<rdar://problem/83241893>

Unreviewed attempt to fix api-ios tests.

* TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm:
(TestWebKitAPI::TEST):
- Work around TestWTF.TypeCastsCocoa.checked_objc_cast test
  failures on iOS Simulator by using @autoreleasepool.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (283516 => 283517)


--- trunk/Tools/ChangeLog	2021-10-04 21:57:38 UTC (rev 283516)
+++ trunk/Tools/ChangeLog	2021-10-04 22:41:27 UTC (rev 283517)
@@ -1,3 +1,16 @@
+2021-10-04  David Kilzer  <[email protected]>
+
+        Follow-up: WTF::RetainPtr<> allows assignment of two pointer types that are not assignable
+        <https://webkit.org/b/230406>
+        <rdar://problem/83241893>
+
+        Unreviewed attempt to fix api-ios tests.
+
+        * TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm:
+        (TestWebKitAPI::TEST):
+        - Work around TestWTF.TypeCastsCocoa.checked_objc_cast test
+          failures on iOS Simulator by using @autoreleasepool.
+
 2021-10-04  John Pascoe  <[email protected]>
 
         [WebAuthn] Prefer internal user verification if available over pin entry.

Modified: trunk/Tools/TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm (283516 => 283517)


--- trunk/Tools/TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm	2021-10-04 21:57:38 UTC (rev 283516)
+++ trunk/Tools/TestWebKitAPI/Tests/WTF/cocoa/TypeCastsCocoa.mm	2021-10-04 22:41:27 UTC (rev 283517)
@@ -31,6 +31,15 @@
 #error This tests TypeCastsCocoa.h with ARC disabled.
 #endif
 
+#if !__has_feature(objc_arc) && PLATFORM(IOS_FAMILY_SIMULATOR)
+// FIXME: checked_objc_cast<> on iOS Simulator creates autoreleased objects in these tests under MRR.
+#define TEST_WTF_BEGIN_AUTORELEASEPOOL @autoreleasepool {
+#define TEST_WTF_END_AUTORELEASEPOOL }
+#else
+#define TEST_WTF_BEGIN_AUTORELEASEPOOL
+#define TEST_WTF_END_AUTORELEASEPOOL
+#endif
+
 @interface MyObjectSubtype : NSObject
 @end
 
@@ -116,8 +125,10 @@
     @autoreleasepool {
         auto objectNS = adoptNS((id)[[NSString alloc] initWithFormat:@"%s", helloWorldCString]);
         auto objectNSPtr = reinterpret_cast<uintptr_t>(objectNS.get());
+TEST_WTF_BEGIN_AUTORELEASEPOOL
         EXPECT_EQ(objectNS.get(), checked_objc_cast<NSString>((__bridge id)(CFTypeRef)objectNSPtr));
         EXPECT_EQ(objectNS.get(), checked_objc_cast<NSObject>((__bridge id)(CFTypeRef)objectNSPtr));
+TEST_WTF_END_AUTORELEASEPOOL
         EXPECT_EQ(1L, CFGetRetainCount((CFTypeRef)objectNSPtr));
     }
 
@@ -124,7 +135,9 @@
     @autoreleasepool {
         auto objectNS = adoptNS((NSObject *)[[NSString alloc] initWithFormat:@"%s", helloWorldCString]);
         auto objectNSPtr = reinterpret_cast<uintptr_t>(objectNS.get());
+TEST_WTF_BEGIN_AUTORELEASEPOOL
         EXPECT_EQ(objectNS.get(), checked_objc_cast<NSString>((__bridge NSObject *)(CFTypeRef)objectNSPtr));
+TEST_WTF_END_AUTORELEASEPOOL
         EXPECT_EQ(1L, CFGetRetainCount((CFTypeRef)objectNSPtr));
     }
 
@@ -131,7 +144,9 @@
     @autoreleasepool {
         auto objectNS = adoptNS([[NSString alloc] initWithFormat:@"%s", helloWorldCString]);
         auto objectNSPtr = reinterpret_cast<uintptr_t>(objectNS.get());
+TEST_WTF_BEGIN_AUTORELEASEPOOL
         EXPECT_EQ(objectNS.get(), checked_objc_cast<NSObject>((__bridge NSString *)(CFTypeRef)objectNSPtr));
+TEST_WTF_END_AUTORELEASEPOOL
         EXPECT_EQ(1L, CFGetRetainCount((CFTypeRef)objectNSPtr));
     }
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to