Ouch, this was nasty - printf format string wasn't matching the parameters passed in causing a NPE due to a missing last param. I'll investigate why printf format strings were not being checked by the compiler (normally gcc offers that feature)