diff options
author | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-04-10 05:39:38 +0300 |
---|---|---|
committer | Paul Sokolovsky <pfalcon@users.sourceforge.net> | 2014-04-10 05:39:38 +0300 |
commit | 978607aeffb5b1deca3a4ad4b0ab0d0e15b5e271 (patch) | |
tree | ccd331a9bb2d4114775b3bc200c637162c37d2a5 /py | |
parent | 41e2dea4ca1147a989bbf3651506b2082f45cb0f (diff) | |
download | micropython-978607aeffb5b1deca3a4ad4b0ab0d0e15b5e271.tar.gz micropython-978607aeffb5b1deca3a4ad4b0ab0d0e15b5e271.zip |
objfun: Fix default arguments filling loop, was broken in presense of kwargs.
Diffstat (limited to 'py')
-rw-r--r-- | py/objfun.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/py/objfun.c b/py/objfun.c index 4071432f97..adf05ce404 100644 --- a/py/objfun.c +++ b/py/objfun.c @@ -299,9 +299,9 @@ continue2:; // Now fill in defaults mp_obj_t *d = &flat_args[self->n_args - 1]; mp_obj_t *s = &self->extra_args[self->n_def_args - 1]; - for (int i = self->n_def_args; i > 0; i--) { + for (int i = self->n_def_args; i > 0; i--, d--, s--) { if (*d == MP_OBJ_NULL) { - *d-- = *s--; + *d = *s; } } DEBUG_printf("Args after filling defaults: "); |