diff --git a/contrib/bc/Makefile.in b/contrib/bc/Makefile.in index db8e24967996..aab7f9b569e5 100644 --- a/contrib/bc/Makefile.in +++ b/contrib/bc/Makefile.in @@ -29,7 +29,7 @@ # .POSIX: -VERSION = 3.3.3 +VERSION = 3.3.4 SRC = %%SRC%% OBJ = %%OBJ%% diff --git a/contrib/bc/NEWS.md b/contrib/bc/NEWS.md index 3a3433077d50..3374ab57bc41 100644 --- a/contrib/bc/NEWS.md +++ b/contrib/bc/NEWS.md @@ -1,5 +1,14 @@ # News +## 3.3.4 + +This is a production release that fixes a small bug. + +The bug was that output was not flushed before a `read()` call, so prompts +without a newline on the end were not flushed before the `read()` call. + +This is such a tiny bug that users only need to upgrade if they are affected. + ## 3.3.3 This is a production release with one tweak and fixes for manuals. diff --git a/contrib/bc/README.md b/contrib/bc/README.md index 2f95e16ed246..6a37a8bfb8da 100644 --- a/contrib/bc/README.md +++ b/contrib/bc/README.md @@ -42,8 +42,7 @@ Systems that are known to work: * HP-UX* (except for history) Please submit bug reports if this `bc` does not build out of the box on any -system besides Windows. If Windows binaries are needed, they can be found at -[xstatic][6]. +system besides Windows. ## Build @@ -52,12 +51,6 @@ This `bc` should build unmodified on any POSIX-compliant system. For more complex build requirements than the ones below, see the [build manual][5]. -### Pre-built Binaries - -It is possible to download pre-compiled binaries for a wide list of platforms, -including Linux- and Windows-based systems, from [xstatic][6]. This link always -points to the latest release of `bc`. - ### Default For the default build with optimization, use the following commands in the root @@ -329,7 +322,6 @@ Folders: [1]: https://www.gnu.org/software/bc/ [4]: ./LICENSE.md [5]: ./manuals/build.md -[6]: https://pkg.musl.cc/bc/ [7]: ./manuals/algorithms.md [8]: https://git.busybox.net/busybox/tree/miscutils/bc.c [9]: https://github.com/landley/toybox/blob/master/toys/pending/bc.c diff --git a/contrib/bc/src/program.c b/contrib/bc/src/program.c index d4e386d4ac1b..6ab794736f79 100644 --- a/contrib/bc/src/program.c +++ b/contrib/bc/src/program.c @@ -1928,6 +1928,10 @@ void bc_program_exec(BcProgram *p) { case BC_INST_READ: { + // We want to flush output before + // this in case there is a prompt. + bc_file_flush(&vm.fout); + bc_program_read(p); ip = bc_vec_top(&p->stack);