@@ -310,20 +310,18 @@ vgetargs1(PyObject *args, const char *format, va_list *p_va, int flags)
310310 if (max == 0 ) {
311311 if (args == NULL )
312312 return 1 ;
313- PyOS_snprintf (msgbuf , sizeof (msgbuf ),
314- "%.200s%s takes no arguments" ,
315- fname == NULL ? "function" : fname ,
316- fname == NULL ? "" : "()" );
317- PyErr_SetString (PyExc_TypeError , msgbuf );
313+ PyErr_Format (PyExc_TypeError ,
314+ "%.200s%s takes no arguments" ,
315+ fname == NULL ? "function" : fname ,
316+ fname == NULL ? "" : "()" );
318317 return 0 ;
319318 }
320319 else if (min == 1 && max == 1 ) {
321320 if (args == NULL ) {
322- PyOS_snprintf (msgbuf , sizeof (msgbuf ),
323- "%.200s%s takes at least one argument" ,
324- fname == NULL ? "function" : fname ,
325- fname == NULL ? "" : "()" );
326- PyErr_SetString (PyExc_TypeError , msgbuf );
321+ PyErr_Format (PyExc_TypeError ,
322+ "%.200s%s takes at least one argument" ,
323+ fname == NULL ? "function" : fname ,
324+ fname == NULL ? "" : "()" );
327325 return 0 ;
328326 }
329327 msg = convertitem (args , & format , p_va , flags , levels ,
@@ -349,20 +347,18 @@ vgetargs1(PyObject *args, const char *format, va_list *p_va, int flags)
349347 len = PyTuple_GET_SIZE (args );
350348
351349 if (len < min || max < len ) {
352- if (message == NULL ) {
353- PyOS_snprintf (msgbuf , sizeof (msgbuf ),
354- "%.150s%s takes %s %d argument%s "
355- "(%ld given)" ,
356- fname == NULL ? "function" : fname ,
357- fname == NULL ? "" : "()" ,
358- min == max ? "exactly"
359- : len < min ? "at least" : "at most" ,
360- len < min ? min : max ,
361- (len < min ? min : max ) == 1 ? "" : "s" ,
362- Py_SAFE_DOWNCAST (len , Py_ssize_t , long ));
363- message = msgbuf ;
364- }
365- PyErr_SetString (PyExc_TypeError , message );
350+ if (message == NULL )
351+ PyErr_Format (PyExc_TypeError ,
352+ "%.150s%s takes %s %d argument%s (%ld given)" ,
353+ fname == NULL ? "function" : fname ,
354+ fname == NULL ? "" : "()" ,
355+ min == max ? "exactly"
356+ : len < min ? "at least" : "at most" ,
357+ len < min ? min : max ,
358+ (len < min ? min : max ) == 1 ? "" : "s" ,
359+ Py_SAFE_DOWNCAST (len , Py_ssize_t , long ));
360+ else
361+ PyErr_SetString (PyExc_TypeError , message );
366362 return 0 ;
367363 }
368364
@@ -1458,8 +1454,8 @@ vgetargskeywords(PyObject *args, PyObject *keywords, const char *format,
14581454 nargs = PyTuple_GET_SIZE (args );
14591455 nkeywords = (keywords == NULL ) ? 0 : PyDict_Size (keywords );
14601456 if (nargs + nkeywords > len ) {
1461- PyErr_Format (PyExc_TypeError , "%s%s takes at most %d "
1462- "argument%s (%d given)" ,
1457+ PyErr_Format (PyExc_TypeError ,
1458+ "%s%s takes at most %d argument%s (%d given)" ,
14631459 (fname == NULL ) ? "function" : fname ,
14641460 (fname == NULL ) ? "" : "()" ,
14651461 len ,
0 commit comments