From e2f0d23a6d14a0bbb648435e791efffdc1649c15 Mon Sep 17 00:00:00 2001 From: Danny Robson Date: Wed, 10 Jan 2018 18:48:18 +1100 Subject: [PATCH] io: ensure we only write views that look like bytes --- io.hpp | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/io.hpp b/io.hpp index 1b15fe74..54d52d9c 100644 --- a/io.hpp +++ b/io.hpp @@ -48,8 +48,15 @@ namespace util { //------------------------------------------------------------------------- - inline void - write (const posix::fd &dst, util::view data) + template < + typename ValueT, + typename = std::enable_if_t< + sizeof (util::view) == 1, + void + > + > + void + write (const posix::fd &dst, util::view data) { write (dst, std::data (data), std::size (data)); } @@ -76,11 +83,7 @@ namespace util { template < typename DstT, typename IteratorA, - typename IteratorB, - typename = std::enable_if_t< - sizeof (util::view::value_type) == 1, - void - > + typename IteratorB > util::view write (DstT &dst, const util::view src)