Solaris' vsprintf doesn't check for a NULL pointer in strlen()