“It didn’t work. I don’t think the app is really crashing,” I say.
“Everybody lies,” repeats House.
I change the code to loop, to reset the handler for ALL signals. I start up the program. Black screen.
“This isn’t it,” I say. But I’m out of ideas.
“EVERYBODY LIES” insists House.
Desperate, frantic, I change the code to spawn a thread that does nothing except loop, loop, loop, constantly resetting all signal handlers. Then I launch the app. Black screen. Try again. Black. Again. Black. Again.
Peter Ammon was my “new hire buddy” when I started in the OS X group at Apple. If there’s one thing I learned working with people like him, it’s that the world’s best programmers are also the world’s best debuggers. Consequently, I appreciate a ripping good debugging yarn. I particularly love that Peter imagines this one as a conversation between himself and Dr. House—something I’ll admit I’ve done a few times myself in my darker hours with GDB.