From: Ahmad Fatoum <a.fatoum@pengutronix.de>
To: barebox@lists.infradead.org
Cc: Ahmad Fatoum <a.fatoum@pengutronix.de>
Subject: [PATCH] fixup! libfile: copy_fd: add size argument
Date: Fri, 23 Jan 2026 22:58:13 +0100 [thread overview]
Message-ID: <20260123215814.572040-1-a.fatoum@pengutronix.de> (raw)
libfile: copy_fd: fix use of zero to mean all content
The function documents that a size of zero means that all data is
copied, but this is currently broken: On first iteration both size and
copied will be zero, so now is set to zero leading to an early exit
without any data copied at all.
One way to fix this is to have size == SIZE_MAX be the way to mean copy
as much data as possible, but let's do as the documentation say and
handle 0 bytes as infinite.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
---
lib/libfile.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/lib/libfile.c b/lib/libfile.c
index bc79e58a82e4..0435fc4297e1 100644
--- a/lib/libfile.c
+++ b/lib/libfile.c
@@ -148,7 +148,12 @@ int copy_fd(int in, int out, size_t size)
return -ENOMEM;
while (1) {
- size_t now = min(bs, size - copied);
+ size_t now;
+
+ if (size)
+ now = min(bs, size - copied);
+ else
+ now = bs;
if (!now) {
ret = 0;
--
2.47.3
next reply other threads:[~2026-01-23 21:59 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-23 21:58 Ahmad Fatoum [this message]
2026-01-26 8:47 ` Sascha Hauer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260123215814.572040-1-a.fatoum@pengutronix.de \
--to=a.fatoum@pengutronix.de \
--cc=barebox@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox