git: cd0355bd261e - stable/13 - Vendor import of bc 3.3.4

Stefan Eßer se at FreeBSD.org
Sun Mar 21 15:45:11 UTC 2021


The branch stable/13 has been updated by se:

URL: https://cgit.FreeBSD.org/src/commit/?id=cd0355bd261e6b8f23c2dd91394d2d345e674b22

commit cd0355bd261e6b8f23c2dd91394d2d345e674b22
Author:     Stefan Eßer <se at FreeBSD.org>
AuthorDate: 2021-03-19 08:39:56 +0000
Commit:     Stefan Eßer <se at FreeBSD.org>
CommitDate: 2021-03-21 15:42:34 +0000

    Vendor import of bc 3.3.4
    
    This update performs an implicit flush of the output when a script
    calls read() in case a prompt is to be displayed in line-buffered
    output mode.
    
    (cherry picked from commit 893ecb52db5ed47d6c1e8698334d34e0df651612)
---
 contrib/bc/Makefile.in   |  2 +-
 contrib/bc/NEWS.md       |  9 +++++++++
 contrib/bc/README.md     | 10 +---------
 contrib/bc/src/program.c |  4 ++++
 4 files changed, 15 insertions(+), 10 deletions(-)

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);


More information about the dev-commits-src-all mailing list