Changeset 249115 in webkit
- Timestamp:
- Aug 26, 2019 1:26:50 PM (5 years ago)
- Location:
- trunk
- Files:
-
- 1 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r249110 r249115 1 2019-08-26 David Kilzer <ddkilzer@apple.com> 2 3 Don't compute upconverted characters twice in buildQuery() in DataDetection.mm 4 <https://webkit.org/b/201144> 5 <rdar://problem/54689399> 6 7 Reviewed by Brent Fulgham. 8 9 * editing/cocoa/DataDetection.mm: 10 (WebCore::buildQuery): Extract common variables to prevent double 11 conversion for 8-bit strings. 12 1 13 2019-08-26 Brent Fulgham <bfulgham@apple.com> 2 14 -
trunk/Source/WebCore/editing/cocoa/DataDetection.mm
r246490 r249115 364 364 // For each fragment the iterator increment is stored as metadata. 365 365 for (TextIterator iterator(contextRange); !iterator.atEnd(); iterator.advance(), iteratorCount++) { 366 size_t currentTextLength = iterator.text().length(); 366 StringView currentText = iterator.text(); 367 size_t currentTextLength = currentText.length(); 367 368 if (!currentTextLength) { 368 369 softLink_DataDetectorsCore_DDScanQueryAddSeparator(scanQuery, DDTextCoalescingTypeHardBreak); … … 372 373 } 373 374 // Test for white space nodes, we're coalescing them. 374 const UniChar* currentCharPtr = iterator.text().upconvertedCharacters(); 375 auto currentTextUpconvertedCharacters = currentText.upconvertedCharacters(); 376 const UniChar* currentCharPtr = currentTextUpconvertedCharacters.get(); 375 377 376 378 bool containsOnlyWhiteSpace = true; … … 411 413 } 412 414 413 RetainPtr<CFStringRef> currentText = adoptCF(CFStringCreateWithCharacters(kCFAllocatorDefault, iterator.text().upconvertedCharacters(), iterator.text().length()));414 softLink_DataDetectorsCore_DDScanQueryAddTextFragment(scanQuery, currentText .get(), CFRangeMake(0, currentTextLength), (void *)iteratorCount, (DDTextFragmentMode)0, DDTextCoalescingTypeNone);415 auto currentTextCFString = adoptCF(CFStringCreateWithCharacters(kCFAllocatorDefault, currentTextUpconvertedCharacters.get(), currentTextLength)); 416 softLink_DataDetectorsCore_DDScanQueryAddTextFragment(scanQuery, currentTextCFString.get(), CFRangeMake(0, currentTextLength), (void *)iteratorCount, (DDTextFragmentMode)0, DDTextCoalescingTypeNone); 415 417 fragmentCount++; 416 418 } -
trunk/Tools/ChangeLog
r249112 r249115 1 2019-08-26 David Kilzer <ddkilzer@apple.com> 2 3 Don't compute upconverted characters twice in buildQuery() in DataDetection.mm 4 <https://webkit.org/b/201144> 5 <rdar://problem/54689399> 6 7 Reviewed by Brent Fulgham. 8 9 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Add 10 DataDetectorsTestIOS.mm to the project. 11 * TestWebKitAPI/Tests/ios/DataDetectorsTestIOS.mm: Add a new 12 test for Data Detectors for phone numbers. 13 1 14 2019-08-26 Wenson Hsieh <wenson_hsieh@apple.com> 2 15 -
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
r249035 r249115 212 212 414AD6862285D1C000777F2D /* StorageQuota.mm in Sources */ = {isa = PBXBuildFile; fileRef = 414AD6852285D1B000777F2D /* StorageQuota.mm */; }; 213 213 41882F0321010C0D002FF288 /* ProcessPreWarming.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41882F0221010A70002FF288 /* ProcessPreWarming.mm */; }; 214 44077BB123144B5000179E2D /* DataDetectorsTestIOS.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44077BB0231449D200179E2D /* DataDetectorsTestIOS.mm */; }; 214 215 4433A396208044140091ED57 /* SynchronousTimeoutTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4433A395208044130091ED57 /* SynchronousTimeoutTests.mm */; }; 215 216 44817A2F1F0486BF00003810 /* WKRequestActivatedElementInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44817A2E1F0486BF00003810 /* WKRequestActivatedElementInfo.mm */; }; … … 1685 1686 41882F0221010A70002FF288 /* ProcessPreWarming.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ProcessPreWarming.mm; sourceTree = "<group>"; }; 1686 1687 41973B5C1AF22875006C7B36 /* SharedBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SharedBuffer.cpp; sourceTree = "<group>"; }; 1688 44077BB0231449D200179E2D /* DataDetectorsTestIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = DataDetectorsTestIOS.mm; sourceTree = "<group>"; }; 1687 1689 442BBF681C91CAD90017087F /* RefLogger.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RefLogger.cpp; sourceTree = "<group>"; }; 1688 1690 4433A395208044130091ED57 /* SynchronousTimeoutTests.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SynchronousTimeoutTests.mm; sourceTree = "<group>"; }; … … 3048 3050 F45B63FC1F19D410009D38B9 /* ActionSheetTests.mm */, 3049 3051 F42D634322A1729F00D2FB3A /* AutocorrectionTestsIOS.mm */, 3052 44077BB0231449D200179E2D /* DataDetectorsTestIOS.mm */, 3050 3053 F4D4F3B71E4E36E400BB2767 /* DragAndDropTestsIOS.mm */, 3051 3054 F4BC0B132146C849002A0478 /* FocusPreservationTests.mm */, … … 4423 4426 751B05D61F8EAC410028A09E /* DatabaseTrackerTest.mm in Sources */, 4424 4427 2DC4CF771D2D9DD800ECCC94 /* DataDetection.mm in Sources */, 4428 44077BB123144B5000179E2D /* DataDetectorsTestIOS.mm in Sources */, 4425 4429 9BAD7F3E22690F2000F8DA66 /* DeallocWebViewInEventListener.mm in Sources */, 4426 4430 518EE51D20A78D3600E024F3 /* DecidePolicyForNavigationAction.mm in Sources */,
Note: See TracChangeset
for help on using the changeset viewer.