The property currentCalls of CTCallCenter is no longer updated is event handler is set

Originator:serieuxchat
Number:rdar://22516446 Date Originated:01-Sep-2015
Status:Open Resolved:
Product:iOS SDK Product Version:iOS 9.0 (13A4325c)
Classification:Serious Bug Reproducible:Always
 
Summary:
The property currentCalls of a CTCallCenter object must always reflect the current situation with phone calls. However, it's no longer being updated if another property of CTCallCenter is set - callEventHandler

Steps to Reproduce:
1. Create an instance of CTCallCenter (single instance to be used throughout the app).
2. Initiate an incoming phone call when the app is running, and log the value of currentCalls property - it will be correct.
3. Hang up the phone call and log currentCalls - it will be correct.
4. Now set callEventHandler property to a non-nil value (some block).
5. Repeat (2) and (3), and after that the currentCalls property will still contain an active call although no call is in progress.

Expected Results:
currentCalls must be updated properly regardless of whether callEventHandler is set or not.

Actual Results:
After the phone call is over, currentCalls is NOT updated if callEventHandler is set.

Notes:
This problem was also seen by other people. See e.g. http://stackoverflow.com/questions/26404449/ctcallcenter-doesnt-update-the-currentcalls-property-after-i-set-calleventhandl

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!