objfun: Fix default arguments filling loop, was broken in presense of kwargs.

This commit is contained in:
Paul Sokolovsky
2014-04-10 05:39:38 +03:00
parent 41e2dea4ca
commit 978607aeff
2 changed files with 8 additions and 2 deletions

View File

@@ -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: ");