Buggy code:
int itemDataProc ( int browser , int id , int property , int itemData , int setValue ) { } int itemNotificationProc ( int browser , int id , int message ) { } int kEventAccessibleGetNamedAttribute ( int nextHandler , int theEvent , int userData ) { int code = OS . CallNextEventHandler ( nextHandler , theEvent ) ; int [ ] ref = new int [ 1 ] ; OS . GetEventParameter ( theEvent , kEventParamAccessibleObject , typeCFTypeRef , null , 4 , null , ref ) ; int axuielementref = ref [ 0 ] ; DataBrowserAccessibilityItemInfo itemInfo = new DataBrowserAccessibilityItemInfo ( ) ; int err = OS . AXUIElementGetDataBrowserItemInfo ( axuielementref , handle , 0 , itemInfo ) ; if ( ( ( ( err == ( OS . noErr ) ) && ( ( itemInfo . v0_columnProperty ) != ( OS . kDataBrowserItemNoProperty ) ) ) && ( ( itemInfo . v0_item ) != ( OS . kDataBrowserNoItem ) ) ) && ( ( itemInfo . v0_propertyPart ) == ( OS . kDataBrowserPropertyEnclosingPart ) ) ) { int columnIndex = 0 ; for ( columnIndex = 0 ; columnIndex < ( columnCount ) ; columnIndex ++ ) { if ( ( columns [ columnIndex ] . id ) == ( itemInfo . v0_columnProperty ) ) break ; } if ( ( columnIndex != ( columnCount ) ) || ( ( columnCount ) == 0 ) ) { int id = itemInfo . v0_item ; TreeItem treeItem = _getItem ( id , false ) ; int [ ] stringRef = new int [ 1 ] ; OS . GetEventParameter ( theEvent , kEventParamAccessibleAttributeName , typeCFStringRef , null , 4 , null , stringRef ) ; int length = 0 ; if ( ( stringRef [ 0 ] ) != 0 ) length = OS . CFStringGetLength ( stringRef [ 0 ] ) ; char [ ] buffer = new char [ length ] ; CFRange range = new CFRange ( ) ; range . length = length ; OS . CFStringGetCharacters ( stringRef [ 0 ] , range , buffer ) ; String attributeName = new String ( buffer ) ; if ( attributeName . equals ( kAXChildrenAttribute ) ) { int children = OS . CFArrayCreateMutable ( kCFAllocatorDefault , 0 , 0 ) ; OS . SetEventParameter ( theEvent , kEventParamAccessibleAttributeValue , typeCFMutableArrayRef , 4 , new int [ ] { children } ) ; OS . CFRelease ( children ) ; return OS . noErr ; } String text = null ; if ( attributeName . equals ( kAXRoleAttribute ) ) { text = OS . kAXStaticTextRole ; } if ( attributeName . equals ( kAXRoleDescriptionAttribute ) ) { buffer = new char [ kAXStaticTextRole . length ( ) ] ; kAXStaticTextRole . getChars ( 0 , buffer . length , buffer , 0 ) ; stringRef [ 0 ] = OS . CFStringCreateWithCharacters ( kCFAllocatorDefault , buffer , buffer . length ) ; if ( ( stringRef [ 0 ] ) != 0 ) { int stringRef2 = OS . HICopyAccessibilityRoleDescription ( stringRef [ 0 ] , 0 ) ; OS . SetEventParameter ( theEvent , kEventParamAccessibleAttributeValue , typeCFStringRef , 4 , new int [ ] { stringRef2 } ) ; OS . CFRelease ( stringRef [ 0 ] ) ; OS . CFRelease ( stringRef2 ) ; return OS . noErr ; } } if ( ( attributeName . equals ( kAXTitleAttribute ) ) || ( attributeName . equals ( kAXDescriptionAttribute ) ) ) { text = treeItem . getText ( columnIndex ) ; } if ( text != null ) { buffer = new char [ text . length ( ) ] ; text . getChars ( 0 , buffer . length , buffer , 0 ) ; stringRef [ 0 ] = OS . CFStringCreateWithCharacters ( kCFAllocatorDefault , buffer , buffer . length ) ; if ( ( stringRef [ 0 ] ) != 0 ) { OS . SetEventParameter ( theEvent , kEventParamAccessibleAttributeValue , typeCFStringRef , 4 , stringRef ) ; OS . CFRelease ( stringRef [ 0 ] ) ; return OS . noErr ; } } } } if ( ( accessible ) != null ) { <START_BUG> return super . kEventAccessibleGetNamedAttribute ( nextHandler , theEvent , userData ) ; <END_BUG> } return code ; } int kEventControlGetClickActivation ( int nextHandler , int theEvent , int userData ) { } int kEventControlSetCursor ( int nextHandler , int theEvent , int userData ) { } int kEventUnicodeKeyPressed ( int nextHandler , int theEvent , int userData ) { } int kEventMouseDown ( int nextHandler , int theEvent , int userData ) { } void releaseItem ( TreeItem item , boolean release ) { } void releaseItems ( int [ ] ids ) { } void releaseChildren ( boolean destroy ) { } void releaseWidget ( ) { } public void removeAll ( ) { } public void removeSelectionListener ( SelectionListener listener ) { } public void removeTreeListener ( TreeListener listener ) { } void resetVisibleRegion ( int control ) { } public void setInsertMark ( TreeItem item , boolean before ) { } public void selectAll ( ) { } public void select ( TreeItem item ) { } void setBackground ( float [ ] color ) { } int setBounds ( int x , int y , int width , int height , boolean move , boolean resize , boolean events ) { } public void setColumnOrder ( int [ ] order ) { } void setFontStyle ( Font font ) { } public void setHeaderVisible ( boolean show ) { } public void setItemCount ( int count ) { } void setItemCount ( TreeItem parentItem , int count ) { } void setItemHeight ( int itemHeight ) { } void setItemHeight ( Image image ) { } public void setLinesVisible ( boolean show ) { }

Fix:
code = accessible . internal_kEventAccessibleGetNamedAttribute ( nextHandler , theEvent , userData ) ;