From 49a1ad773c3b4cd32a35f8c8d93fb560bf40a4f0 Mon Sep 17 00:00:00 2001 From: "Nicolas \"Pixel\" Noble" Date: Tue, 7 Jan 2014 00:11:32 -0800 Subject: Implementing Output's write. --- src/Output.cc | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/Output.cc b/src/Output.cc index 0ace38e..8e962be 100644 --- a/src/Output.cc +++ b/src/Output.cc @@ -220,8 +220,12 @@ class AsyncOpWrite : public Balau::AsyncOperation { AsyncOpWrite(int fd, const void * buf, size_t count, off64_t offset, cbResults_t * results) : m_fd(fd), m_buf(buf), m_count(count), m_offset(offset), m_results(results) { } virtual void run() { #ifdef _MSC_VER - IAssert(0, "Not yet implemented"); - const ssize_t r = 0; + off64_t offset = lseek(m_fd, m_offset, SEEK_SET); + if (offset < 0) { + m_results->errorno = errno; + return; + } + const ssize_t r = m_results->result = write(m_fd, m_buf, m_count); #else const ssize_t r = m_results->result = pwrite(m_fd, m_buf, m_count, m_offset); #endif -- cgit v1.2.3