comparison Python/getargs.c @ 38661:3581d1dc4253 legacy-trunk

Bug #1502750: Fix getargs "i" format to use LONG_MIN and LONG_MAX for bounds checking.
author Georg Brandl <georg@python.org>
date Thu, 08 Jun 2006 12:45:01 +0000
parents 6eb86a71f5c8
children e2ba5ae4b813
comparison
equal deleted inserted replaced
38660:f28f9c15e2d0 38661:3581d1dc4253
622 if (float_argument_error(arg)) 622 if (float_argument_error(arg))
623 return converterr("integer<i>", arg, msgbuf, bufsize); 623 return converterr("integer<i>", arg, msgbuf, bufsize);
624 ival = PyInt_AsLong(arg); 624 ival = PyInt_AsLong(arg);
625 if (ival == -1 && PyErr_Occurred()) 625 if (ival == -1 && PyErr_Occurred())
626 return converterr("integer<i>", arg, msgbuf, bufsize); 626 return converterr("integer<i>", arg, msgbuf, bufsize);
627 else if (ival > INT_MAX) { 627 else if (ival > LONG_MAX) {
628 PyErr_SetString(PyExc_OverflowError, 628 PyErr_SetString(PyExc_OverflowError,
629 "signed integer is greater than maximum"); 629 "signed integer is greater than maximum");
630 return converterr("integer<i>", arg, msgbuf, bufsize); 630 return converterr("integer<i>", arg, msgbuf, bufsize);
631 } 631 }
632 else if (ival < INT_MIN) { 632 else if (ival < LONG_MIN) {
633 PyErr_SetString(PyExc_OverflowError, 633 PyErr_SetString(PyExc_OverflowError,
634 "signed integer is less than minimum"); 634 "signed integer is less than minimum");
635 return converterr("integer<i>", arg, msgbuf, bufsize); 635 return converterr("integer<i>", arg, msgbuf, bufsize);
636 } 636 }
637 else 637 else