summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Kellermann <max@musicpd.org>2019-08-26 21:14:19 +0200
committerMax Kellermann <max@musicpd.org>2020-09-07 20:07:33 +0200
commit6238cc073474ce079197ff62e3f66f81963fc127 (patch)
treef7f0143f00efc63e5897b3fbd9bc99cd6c2a7a26
parentfd4823c507ef8d9c93456cb0029f22b48a3c816d (diff)
test/run_filter: pass ConstBuffer<void> to FullWrite()
-rw-r--r--test/run_filter.cxx19
1 files changed, 11 insertions, 8 deletions
diff --git a/test/run_filter.cxx b/test/run_filter.cxx
index 6d8a270f0..d51461511 100644
--- a/test/run_filter.cxx
+++ b/test/run_filter.cxx
@@ -96,20 +96,23 @@ FullRead(FileDescriptor fd, void *_buffer, size_t size)
}
static void
-FullWrite(FileDescriptor fd, const void *_buffer, size_t size)
+FullWrite(FileDescriptor fd, ConstBuffer<uint8_t> src)
{
- auto buffer = (const uint8_t *)_buffer;
-
- while (size > 0) {
- size_t nbytes = WriteOrThrow(fd, buffer, size);
+ while (!src.empty()) {
+ size_t nbytes = WriteOrThrow(fd, src.data, src.size);
if (nbytes == 0)
throw std::runtime_error("Write failed");
- buffer += nbytes;
- size -= nbytes;
+ src.skip_front(nbytes);
}
}
+static void
+FullWrite(FileDescriptor fd, ConstBuffer<void> src)
+{
+ FullWrite(fd, ConstBuffer<uint8_t>::FromVoid(src));
+}
+
static size_t
ReadFrames(FileDescriptor fd, void *_buffer, size_t size, size_t frame_size)
{
@@ -178,7 +181,7 @@ try {
break;
auto dest = filter->FilterPCM({(const void *)buffer, (size_t)nbytes});
- FullWrite(output_fd, dest.data, dest.size);
+ FullWrite(output_fd, dest);
}
/* cleanup and exit */