diff options
Diffstat (limited to 'src/qreg-commands.c')
| -rw-r--r-- | src/qreg-commands.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/qreg-commands.c b/src/qreg-commands.c index a6390a1..d7b0a10 100644 --- a/src/qreg-commands.c +++ b/src/qreg-commands.c @@ -62,7 +62,7 @@ teco_state_expectqreg_input(teco_machine_main_t *ctx, gunichar chr, GError **err case TECO_MACHINE_QREGSPEC_ERROR: return NULL; case TECO_MACHINE_QREGSPEC_MORE: - return current; + TECO_RETURN(ctx, current, error); case TECO_MACHINE_QREGSPEC_DONE: break; } @@ -72,7 +72,8 @@ teco_state_expectqreg_input(teco_machine_main_t *ctx, gunichar chr, GError **err * states. This means, it must usually be reset manually in got_register_cb() via: * teco_state_expectqreg_reset(ctx); */ - return current->expectqreg.got_register_cb(ctx, qreg, table, error); + teco_state_t *next = current->expectqreg.got_register_cb(ctx, qreg, table, error); + TECO_RETURN(ctx, next, error); } static teco_state_t * |
