Steps to reproduce: 1. On this page, move the mouse cursor over a word. 2. Press Command-Control-D (or whatever the keyboard shortcut for Look up in Dictionary is; see System Preferences > Keyboard & Mouse). Result: ASSERTION FAILED: range != nil (WebKit/mac/WebCoreSupport/WebViewFactory.mm:405 WebCoreTextMarker* -[WebViewFactory endOfTextMarkerRange:](WebViewFactory*, objc_selector*, WebCoreTextMarkerRange*)) Backtrace: #0 0x003b5103 in -[WebViewFactory endOfTextMarkerRange:] (self=0x3eb58a0, _cmd=0x26d7548, range=0x0) at WebKit/mac/WebCoreSupport/WebViewFactory.mm:405 #1 0x0236310b in visiblePositionForEndOfTextMarkerRange (textMarkerRange=0x0) at WebCore/page/mac/AccessibilityObjectWrapper.mm:160 #2 0x02363136 in -[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:] (self=0x17aa8c70, _cmd=0x26d77c0, textMarkerRange=0x0) at WebCore/page/mac/AccessibilityObjectWrapper.mm:575 #3 0x02366323 in -[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:] (self=0x17aa8c70, _cmd=0x94df6efc, attribute=0x19d0617c, parameter=0x17aa0220) at WebCore/page/mac/AccessibilityObjectWrapper.mm:1214 #4 0x19d0391b in DSAXGetTextOrigin () (More stack frames follow...)
Created attachment 20401 [details] patch
in AccessibilityObjectWrapper.mm, in -accessibilityAttributeValue:forParameter:, starting from the comment "// Convert values to WebCore types", we have a few lines of code that "prep" webcore equivalent values of mac-specific types. Although I'm not too fond of the idea of prepping these values in cases where they're not needed, having it all in one section makes the rest of the code easier to compare to what used to be in WebCoreAXObject.cpp, and thus easier for debugging in this transition period.
Comment on attachment 20401 [details] patch Please add the bug URL and title to the change log. + if (textMarker != nil) + if (textMarkerRange != nil) According to the style guidelines these should be written as + if (textMarker) + if (textMarkerRange) r=me
(In reply to comment #2) > in AccessibilityObjectWrapper.mm, in > -accessibilityAttributeValue:forParameter:, starting from the comment "// > Convert values to WebCore types", we have a few lines of code that "prep" > webcore equivalent values of mac-specific types. Although I'm not too fond of > the idea of prepping these values in cases where they're not needed, having it > all in one section makes the rest of the code easier to compare to what used to > be in WebCoreAXObject.cpp, and thus easier for debugging in this transition > period. Just saw this comment. Perhaps you should add a FIXME or file a bug about improving that code in the future.
fixed the changelog, style, and added a fixme comment. r31720