in Xcode6 beta5 method_exchangeImplementations and method_setImplementation does not set implementation of extension method

Originator:corinnekrych
Number:rdar://17947050 Date Originated:7/08/2014
Status:Fixed Resolved:beta6
Product:xcode6beta5 Product Version:
Classification: Reproducible:yes
 
Summary:
The content of the extension method is not replaced when using either
method_exchangeImplementations
method_setImplementation

Steps to Reproduce:
In beta 4 the following code runs correctly:
https://github.com/corinnekrych/AGURLSessionStubs/blob/beta5/AGURLSessionStubs/StubsManager.swift#L111
In beta 5 recursive call occurs

Expected Results:
1. method defaultSessionConfiguration should run swizzle_defaultSessionConfiguration content
2. method swizzle_defaultSessionConfiguration should run defaultSessionConfiguration content

Actual Results:
1. method defaultSessionConfiguration does run swizzle_defaultSessionConfiguration content
2. method swizzle_defaultSessionConfiguration does not run defaultSessionConfiguration content but instead run recursively

The content of the extension method swizzle_defaultSessionConfiguration is not replaced by the content of defaultSessionConfiguration

Version:
ios8 beta 5

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!