New issue
Advanced search Search tips

Issue 888782 link

Starred by 1 user

Issue metadata

Status: ExternalDependency
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug



Sign in to add a comment

macOS IME subsystem sometimes sends an invalid range (NSNotFound) with non-zero length to NSTextInputClient

Project Member Reported by tapted@chromium.org, Sep 24

Issue description

Chrome Version       : 69.0.3497.72
OS Version: OS X 10.13.6

This likely happens when the location bar logic jumps in and modifies the underlying text while the IME is mid-transaction.

The DCHECK is "harmless". gfx::Range just doesn't expect NSRange with an NSNotFound location to ever have non-zero length.


[89757:775:0925/084517.526137:FATAL:range_mac.mm(21)] Check failed: 0U == range.length (0 vs. 30)
0   libbase.dylib                       0x0000000112127f3e base::debug::StackTrace::StackTrace(unsigned long) + 174
1   libbase.dylib                       0x0000000112127ffd base::debug::StackTrace::StackTrace(unsigned long) + 29
2   libbase.dylib                       0x0000000111cf87dc base::debug::StackTrace::StackTrace() + 28
3   libbase.dylib                       0x0000000111d668ac logging::LogMessage::~LogMessage() + 460
4   libbase.dylib                       0x0000000111d64445 logging::LogMessage::~LogMessage() + 21
5   librange.dylib                      0x000000011513680e gfx::Range::operator=(_NSRange const&) + 254
6   librange.dylib                      0x00000001151366fd gfx::Range::Range(_NSRange const&) + 29
7   librange.dylib                      0x00000001151369ed gfx::Range::Range(_NSRange const&) + 29
8   libviews.dylib                      0x0000000150aa72f8 -[BridgedContentView attributedSubstringForProposedRange:actualRange:] + 104
9   AppKit                              0x00007fff51f56057 -[NSTextInputContext(NSInputContext_WithCompletion) attributedSubstringForProposedRange:completionHandler:] + 104
10  AppKit                              0x00007fff51f51403 __55-[NSTextInputContext handleTSMEvent:completionHandler:]_block_invoke.785 + 92
11  AppKit                              0x00007fff51f4bdfd -[NSTextInputContext tryHandleTSMEvent_attributedSubstringForProposedRange_withContext:dispatchCondition:dispatchWork:continuation:] + 91
12  AppKit                              0x00007fff51f5132d __55-[NSTextInputContext handleTSMEvent:completionHandler:]_block_invoke.780 + 403
13  AppKit                              0x00007fff516bb10d -[NSTextInputContext handleTSMEvent:completionHandler:] + 2050
14  AppKit                              0x00007fff516ba895 _NSTSMEventHandler + 311
15  HIToolbox                           0x00007fff53264904 DispatchEventToHandlers(EventTargetRec*, OpaqueEventRef*, HandlerCallRec*) + 1541
16  HIToolbox                           0x00007fff53263c4d SendEventToEventTargetInternal(OpaqueEventRef*, OpaqueEventTargetRef*, HandlerCallRec*) + 374
17  HIToolbox                           0x00007fff53263ac3 SendEventToEventTargetWithOptions + 45
18  HIToolbox                           0x00007fff532b7bd9 SendTSMEvent_WithCompletionHandler + 389
19  HIToolbox                           0x00007fff53467eb4 __SendTextInputEvent_WithCompletionHandler_block_invoke + 510
20  HIToolbox                           0x00007fff534660da SendTextInputEvent_WithCompletionHandler + 1188
21  HIToolbox                           0x00007fff534d7d24 -[IMKInputSession _postEvent:completionHandler:] + 175
22  HIToolbox                           0x00007fff534e87c0 -[IMKInputSession _copyUniCharsForRange:intoBuffer:ofLength:completionHandler:] + 500
23  HIToolbox                           0x00007fff534e8f2e -[IMKInputSession _coreAttributesFromRange:whichAttributes:completionHandler:] + 266
24  HIToolbox                           0x00007fff534eea9d -[IMKInputSession stringFromRange:completionHandler:] + 176
25  HIToolbox                           0x00007fff534e3676 __48-[IMKInputSession imkxpc_stringFromRange:reply:]_block_invoke + 485
26  CoreFoundation                      0x00007fff53fbf87c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
27  CoreFoundation                      0x00007fff53fa2253 __CFRunLoopDoBlocks + 275
28  CoreFoundation                      0x00007fff53fa1902 __CFRunLoopRun + 1314
29  CoreFoundation                      0x00007fff53fa1153 CFRunLoopRunSpecific + 483
30  HIToolbox                           0x00007fff5328bd96 RunCurrentEventLoopInMode + 286
31  HIToolbox                           0x00007fff5328bb06 ReceiveNextEventCommon + 613
32  HIToolbox                           0x00007fff5328b884 _BlockUntilNextEventMatchingListInModeWithFilter + 64
33  AppKit                              0x00007fff5153ca73 _DPSNextEvent + 2085
34  AppKit                              0x00007fff51cd2e34 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3044
35  libchrome_dll.dylib                 0x000000011b4143da __71-[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:]_block_invoke + 106
36  libbase.dylib                       0x0000000111d6c6ba base::mac::CallWithEHFrame(void () block_pointer) + 10
37  libchrome_dll.dylib                 0x000000011b414278 -[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 248
38  AppKit                              0x00007fff51531885 -[NSApplication run] + 764
 
also this only seems to happen on touchbar macs :/
Labels: Hotlist-DesktopUIToolingRequired Hotlist-DesktopUIChecked

Sign in to add a comment