Kaydet (Commit) 3267d28f authored tarafından Georg Brandl's avatar Georg Brandl

Bug #1566800: make sure that EnvironmentError can be called with any

number of arguments, as was the case in Python 2.4.
üst 5d59c098
...@@ -196,11 +196,16 @@ class ExceptionTests(unittest.TestCase): ...@@ -196,11 +196,16 @@ class ExceptionTests(unittest.TestCase):
(SystemExit, ('foo',), (SystemExit, ('foo',),
{'message' : 'foo', 'args' : ('foo',), 'code' : 'foo'}), {'message' : 'foo', 'args' : ('foo',), 'code' : 'foo'}),
(IOError, ('foo',), (IOError, ('foo',),
{'message' : 'foo', 'args' : ('foo',)}), {'message' : 'foo', 'args' : ('foo',), 'filename' : None,
'errno' : None, 'strerror' : None}),
(IOError, ('foo', 'bar'), (IOError, ('foo', 'bar'),
{'message' : '', 'args' : ('foo', 'bar')}), {'message' : '', 'args' : ('foo', 'bar'), 'filename' : None,
'errno' : 'foo', 'strerror' : 'bar'}),
(IOError, ('foo', 'bar', 'baz'), (IOError, ('foo', 'bar', 'baz'),
{'message' : '', 'args' : ('foo', 'bar')}), {'message' : '', 'args' : ('foo', 'bar'), 'filename' : 'baz',
'errno' : 'foo', 'strerror' : 'bar'}),
(IOError, ('foo', 'bar', 'baz', 'quux'),
{'message' : '', 'args' : ('foo', 'bar', 'baz', 'quux')}),
(EnvironmentError, ('errnoStr', 'strErrorStr', 'filenameStr'), (EnvironmentError, ('errnoStr', 'strErrorStr', 'filenameStr'),
{'message' : '', 'args' : ('errnoStr', 'strErrorStr'), {'message' : '', 'args' : ('errnoStr', 'strErrorStr'),
'strerror' : 'strErrorStr', 'errno' : 'errnoStr', 'strerror' : 'strErrorStr', 'errno' : 'errnoStr',
......
...@@ -12,6 +12,9 @@ What's New in Python 2.6 alpha 1? ...@@ -12,6 +12,9 @@ What's New in Python 2.6 alpha 1?
Core and builtins Core and builtins
----------------- -----------------
- Bug #1566800: make sure that EnvironmentError can be called with any
number of arguments, as was the case in Python 2.4.
- Patch #1567691: super() and new.instancemethod() now don't accept - Patch #1567691: super() and new.instancemethod() now don't accept
keyword arguments any more (previously they accepted them, but didn't keyword arguments any more (previously they accepted them, but didn't
use them). use them).
......
...@@ -510,7 +510,7 @@ EnvironmentError_init(PyEnvironmentErrorObject *self, PyObject *args, ...@@ -510,7 +510,7 @@ EnvironmentError_init(PyEnvironmentErrorObject *self, PyObject *args,
if (BaseException_init((PyBaseExceptionObject *)self, args, kwds) == -1) if (BaseException_init((PyBaseExceptionObject *)self, args, kwds) == -1)
return -1; return -1;
if (PyTuple_GET_SIZE(args) <= 1) { if (PyTuple_GET_SIZE(args) <= 1 || PyTuple_GET_SIZE(args) > 3) {
return 0; return 0;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment