diff --git a/main/busybox/0032-lineedit-fix-some-tab-completions-written-to-stdout.patch b/main/busybox/0032-lineedit-fix-some-tab-completions-written-to-stdout.patch
new file mode 100644
index 0000000000000000000000000000000000000000..36188e496da07c2c4fe6276358ccf86d3fa417e9
--- /dev/null
+++ b/main/busybox/0032-lineedit-fix-some-tab-completions-written-to-stdout.patch
@@ -0,0 +1,46 @@
+From 9da8d772bafb45b04c34b9901b1c16ad0e439ac5 Mon Sep 17 00:00:00 2001
+From: Sertonix <sertonix@posteo.net>
+Date: Wed, 30 Oct 2024 14:09:36 +0100
+Subject: [PATCH] lineedit: fix some tab completions written to stdout
+
+In fd47f056765 (lineedit: print prompt and editing operations to stderr)
+some output was left printing to stdout. This can causes a race condition
+between stderr and stdout which in some cases leads to output written in
+the wrong places.
+
+Downstream issue: https://gitlab.alpinelinux.org/alpine/aports/-/issues/16566
+Fixes: fd47f056765
+
+Signed-off-by: Sertonix <sertonix@posteo.net>
+---
+ libbb/lineedit.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/libbb/lineedit.c b/libbb/lineedit.c
+index 151208c1c..066087364 100644
+--- a/libbb/lineedit.c
++++ b/libbb/lineedit.c
+@@ -451,7 +451,7 @@ static void put_cur_glyph_and_inc_cursor(void)
+ 		 * have automargin (IOW: it is moving cursor to next line
+ 		 * by itself (which is wrong for VT-10x terminals)),
+ 		 * this will break things: there will be one extra empty line */
+-		puts("\r"); /* + implicit '\n' */
++		bb_putchar_stderr('\r'); /* + implicit '\n' */
+ #else
+ 		/* VT-10x terminals don't wrap cursor to next line when last char
+ 		 * on the line is printed - cursor stays "over" this char.
+@@ -1170,9 +1170,9 @@ static void showfiles(void)
+ 			);
+ 		}
+ 		if (ENABLE_UNICODE_SUPPORT)
+-			puts(printable_string(matches[n]));
++			fprintf(stderr, "%s\n", printable_string(matches[n]));
+ 		else
+-			puts(matches[n]);
++			fprintf(stderr, "%s\n", matches[n]);
+ 	}
+ }
+ 
+-- 
+2.46.2
+
diff --git a/main/busybox/APKBUILD b/main/busybox/APKBUILD
index 8d8884d4cd54c1df6618f37e0b42be3bd939b929..b71e3db76136df881f2dab596823c1eab53cf158 100644
--- a/main/busybox/APKBUILD
+++ b/main/busybox/APKBUILD
@@ -5,7 +5,7 @@
 # Maintainer: Sören Tempel <soeren+alpine@soeren-tempel.net>
 pkgname=busybox
 pkgver=1.37.0
-pkgrel=3
+pkgrel=4
 pkgdesc="Size optimized toolbox of many common UNIX utilities"
 url="https://busybox.net/"
 arch="all"
@@ -78,6 +78,7 @@ source="https://busybox.net/downloads/busybox-$pkgver.tar.bz2
 	0029-ash-reject-unknown-long-options.patch
 	0030-hexdump-Skip-a-single-test-on-big-endian-systems.patch
 	0031-syslogd-fix-wrong-OPT_locallog-flag-detection.patch
+	0032-lineedit-fix-some-tab-completions-written-to-stdout.patch
 
 	acpid.logrotate
 	busyboxconfig
@@ -389,6 +390,7 @@ e2c6367162b886654d64a1988e383c05e2792183265c3542d68e535daa5a9509c3e6a42b9aad0367
 d9625580bdfe7036e0a3e01c33ddffcc8c70737dfa031c9f97a5a45635910dbd5cf3ebb8d28256a10ee7a13efa1e396a93404099db7a5143adf924a953d4cbe7  0029-ash-reject-unknown-long-options.patch
 3b9542d3ec24d9d3fd12b69f60ca1014b49240b92d8517e4467f62b0e266102a73cdac784766a5548a909e08a497c577b1e880604d1859eee18ac455d8bc56b2  0030-hexdump-Skip-a-single-test-on-big-endian-systems.patch
 4c2b7d7c623b318087f20b0bef9140cfa3f83111bfc922bba50ddd16edb8844c848c8b93c5d31303b7f253673fbff8ccf3d4ab4b9dad52fde3e04744b0782170  0031-syslogd-fix-wrong-OPT_locallog-flag-detection.patch
+f3019d33978fefab027f61cb3181d0cfa9f81463f5ca2a4c84113085e2e262eeecef53d8c731ffe862e2e90857f62214f3b9a4b35203eae30f9e761e2132c1d3  0032-lineedit-fix-some-tab-completions-written-to-stdout.patch
 aa93095e20de88730f526c6f463cef711b290b9582cdbd8c1ba2bd290019150cbeaa7007c2e15f0362d5b9315dd63f60511878f0ea05e893f4fdfb4a54af3fb1  acpid.logrotate
 94007c258297beb756b7668af94f4818c598456ff337919d8f1260ebf1616c7b0016c2cf04bf8d2428f2c307d30816b523308509770d1aae67fdd87c29a360fa  busyboxconfig
 9b399cf4bb9dc438c238d7294aef8a7452d9a2b74ff4c09a1349e74e457523329b32042ce86e7dedb99906011022dfd631074a836c897082cbe88c9ae19fe1d4  busyboxconfig-extras