Well boom there goes the dynamite. But why was that preventing the view from being displayed since it occurred after the modal view controller was prevented?
Because it's an infinite loop that was running in the main run loop, which is also responsible for dealing with UI display. Just because you sent the message to present the modal view, doesn't mean it will be shown before your code continues to execute. This is a key point of understanding for Cocoa (Touch) execution flow.
Well that is something. This is why I have always shied away from OO programming. Well, I seriously can't thank you enough. Everything looks like it's in good shape now.