bpo-38821: Fix crash in argparse when using gettext (GH-17192)
This commit is contained in:
parent
4dedd0f0dd
commit
be5c79e033
|
@ -2148,10 +2148,11 @@ class ArgumentParser(_AttributeHolder, _ActionsContainer):
|
||||||
OPTIONAL: _('expected at most one argument'),
|
OPTIONAL: _('expected at most one argument'),
|
||||||
ONE_OR_MORE: _('expected at least one argument'),
|
ONE_OR_MORE: _('expected at least one argument'),
|
||||||
}
|
}
|
||||||
default = ngettext('expected %s argument',
|
msg = nargs_errors.get(action.nargs)
|
||||||
|
if msg is None:
|
||||||
|
msg = ngettext('expected %s argument',
|
||||||
'expected %s arguments',
|
'expected %s arguments',
|
||||||
action.nargs) % action.nargs
|
action.nargs) % action.nargs
|
||||||
msg = nargs_errors.get(action.nargs, default)
|
|
||||||
raise ArgumentError(action, msg)
|
raise ArgumentError(action, msg)
|
||||||
|
|
||||||
# return the number of arguments matched
|
# return the number of arguments matched
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Fix unhandled exceptions in :mod:`argparse` when internationalizing error messages for arguments with ``nargs`` set to special (non-integer) values. Patch by Federico Bond.
|
Loading…
Reference in New Issue