Mac OS X 10.11.3: NSSearchField restores deallocated first responder

Originator:stephan.michels
Number:rdar://24480401 Date Originated:03-Feb-2016 02:36 PM
Status:Open Resolved:
Product:OS X Product Version:Mac OS X 10.11.3 (15D21)
Classification:Serious Bug Reproducible:Always
 
Summary:
NSSearchField restores deallocated first responder using an internal instance variable _previousResponder

Steps to Reproduce:
I will add a demo application
1. NSSearchField is the first responder
2. Open a NSPopover, which has a view like NSTextView, by clicking on a button
3. Close and deallocated the popover
4. NSSearchField will the the first responder again, and stores the deallocated first responder in _previousResponder
5. Switch to a different application
6. Switch back to the application, bad access because of the restore deallocated first responder

Important is that the NSSearchField doesn’t use the centered lock.

Expected Results:
No crash.
The reference _previousResponder should be weak

Actual Results:
Bad access

Comments


Please note: Reports posted here will not necessarily be seen by Apple. All problems should be submitted at bugreport.apple.com before they are posted here. Please only post information for Radars that you have filed yourself, and please do not include Apple confidential information in your posts. Thank you!