Swizzling y super

Estoy intentando cambiar el método canPerformAction: withSender: para UIResponder y todas sus subclases que han invalidado este método.

Lo estoy haciendo almacenando las implementaciones originales en un diccionario codificado por nombre de clase; y buscar el diccionario en la versión swizzled de la implementación antes de llamar a la implementación original.

Esto parece funcionar bien para algunos casos, pero falla cuando la implementación original llama a super. Entonces mi método swizzled continúa siendo invocado continuamente y el programa entra en recursión infinita.

¿Qué podría estar mal aquí?

Respuestas a la pregunta(1)

Su respuesta a la pregunta