fix bug for vsprintf