Title: [214932] trunk
Revision
214932
Author
[email protected]
Date
2017-04-05 00:36:05 -0700 (Wed, 05 Apr 2017)

Log Message

[ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
https://bugs.webkit.org/show_bug.cgi?id=161967

Reviewed by Alexey Proskuryakov.

Source/WebCore:

DataDetectorsCoreSPI.h defined DDQueryOffset as a struct of two CFIndexes, which is 16 bytes
on LP64, but the struct is actually defined as two CFIndex-typed 32-bit bitfields, which is
8 bytes on LP64. This breaks the ABI on Public SDK builds when calling functions that take
or return DDQueryOffsets.

* platform/spi/cocoa/DataDetectorsCoreSPI.h: Updated the DDQueryOffset definition for
Public SDK builds, and added a static_assert to detect future size changes at compile time.

Tools:

* TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
(TEST): Re-enabled WebKit2.DataDetectionReferenceDate.

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (214931 => 214932)


--- trunk/Source/WebCore/ChangeLog	2017-04-05 07:09:41 UTC (rev 214931)
+++ trunk/Source/WebCore/ChangeLog	2017-04-05 07:36:05 UTC (rev 214932)
@@ -1,3 +1,18 @@
+2017-04-05  Andy Estes  <[email protected]>
+
+        [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
+        https://bugs.webkit.org/show_bug.cgi?id=161967
+
+        Reviewed by Alexey Proskuryakov.
+
+        DataDetectorsCoreSPI.h defined DDQueryOffset as a struct of two CFIndexes, which is 16 bytes
+        on LP64, but the struct is actually defined as two CFIndex-typed 32-bit bitfields, which is
+        8 bytes on LP64. This breaks the ABI on Public SDK builds when calling functions that take
+        or return DDQueryOffsets.
+
+        * platform/spi/cocoa/DataDetectorsCoreSPI.h: Updated the DDQueryOffset definition for
+        Public SDK builds, and added a static_assert to detect future size changes at compile time.
+
 2017-04-04  Jer Noble  <[email protected]>
 
         Move AVSampleBufferDisplayLayer declarations into AVFoundationSPI.h

Modified: trunk/Source/WebCore/platform/spi/cocoa/DataDetectorsCoreSPI.h (214931 => 214932)


--- trunk/Source/WebCore/platform/spi/cocoa/DataDetectorsCoreSPI.h	2017-04-05 07:09:41 UTC (rev 214931)
+++ trunk/Source/WebCore/platform/spi/cocoa/DataDetectorsCoreSPI.h	2017-04-05 07:36:05 UTC (rev 214932)
@@ -106,8 +106,8 @@
 #define DDResultPropertyPassiveDisplay   (1 << 0)
 
 typedef struct __DDQueryOffset {
-    CFIndex queryIndex;
-    CFIndex offset;
+    CFIndex queryIndex:32;
+    CFIndex offset:32;
 } DDQueryOffset;
 
 typedef struct __DDQueryRange {
@@ -117,6 +117,8 @@
 
 #endif // !USE(APPLE_INTERNAL_SDK)
 
+static_assert(sizeof(DDQueryOffset) == 8, "DDQueryOffset is no longer 8 bytes. Update the definition of DDQueryOffset in this file to match the new size.");
+
 typedef struct __DDScanQuery *DDScanQueryRef;
 typedef struct __DDScanner *DDScannerRef;
 

Modified: trunk/Tools/ChangeLog (214931 => 214932)


--- trunk/Tools/ChangeLog	2017-04-05 07:09:41 UTC (rev 214931)
+++ trunk/Tools/ChangeLog	2017-04-05 07:36:05 UTC (rev 214932)
@@ -1,3 +1,13 @@
+2017-04-05  Andy Estes  <[email protected]>
+
+        [ios-simulator] API test WebKit2.DataDetectionReferenceDate timing out
+        https://bugs.webkit.org/show_bug.cgi?id=161967
+
+        Reviewed by Alexey Proskuryakov.
+
+        * TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm:
+        (TEST): Re-enabled WebKit2.DataDetectionReferenceDate.
+
 2017-04-04  Simon Fraser  <[email protected]>
 
         Various settings in Minibrowser are off by default, and should be on

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm (214931 => 214932)


--- trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm	2017-04-05 07:09:41 UTC (rev 214931)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/DataDetection.mm	2017-04-05 07:36:05 UTC (rev 214932)
@@ -69,7 +69,7 @@
     ranScript = false;
 }
 
-TEST(WebKit2, DISABLED_DataDetectionReferenceDate)
+TEST(WebKit2, DataDetectionReferenceDate)
 {
     RetainPtr<WKWebViewConfiguration> configuration = adoptNS([[WKWebViewConfiguration alloc] init]);
     [configuration setDataDetectorTypes:WKDataDetectorTypeCalendarEvent];
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to