aboutsummaryrefslogtreecommitdiff
path: root/bpkg/checksum.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'bpkg/checksum.cxx')
-rw-r--r--bpkg/checksum.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/bpkg/checksum.cxx b/bpkg/checksum.cxx
index 023e641..3f52204 100644
--- a/bpkg/checksum.cxx
+++ b/bpkg/checksum.cxx
@@ -330,7 +330,12 @@ namespace bpkg
ifdstream is (pr.in_ofd, fdstream_mode::skip);
ofdstream os (pr.out_fd);
- os << &sb;
+ // Note that the eof check is important: if the stream is at eof, write
+ // will fail.
+ //
+ if (sb.sgetc () != ifdstream::traits_type::eof ())
+ os << &sb;
+
os.close ();
// All three tools output the sum as the first word.