change -e to flush aftering printing a result

Previously, the use of `pretty-print' for `print' by `racket/main'
and the use of `transplant-output-port' by `pretty-print' caused
a flush to happen.

This problem highlights a potential general issue, which is that
`pretty-print' happened to always flush its output before, and
some programs may accidentally depend on that behavior.
This commit is contained in:
Matthew Flatt 2012-08-27 19:59:27 -06:00
parent 85b99de7b1
commit 7e2bcfd994

View File

@ -5133,6 +5133,7 @@ static Scheme_Object *do_eval_string_all(Scheme_Object *port, const char *str, S
printer = scheme_get_param(scheme_current_config(), MZCONFIG_PRINT_HANDLER); printer = scheme_get_param(scheme_current_config(), MZCONFIG_PRINT_HANDLER);
arg[0] = a[i]; arg[0] = a[i];
scheme_apply(printer, 1, arg); scheme_apply(printer, 1, arg);
scheme_flush_output(scheme_get_param(scheme_current_config(), MZCONFIG_OUTPUT_PORT));
} }
} }
} }