about summary refs log tree commit diff
path: root/src/rt/rust_uv.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/rt/rust_uv.cpp')
-rw-r--r--src/rt/rust_uv.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/rt/rust_uv.cpp b/src/rt/rust_uv.cpp
index d0d98aa5090..2d4d88b96cd 100644
--- a/src/rt/rust_uv.cpp
+++ b/src/rt/rust_uv.cpp
@@ -276,7 +276,15 @@ static void write_complete(request *req, int status) {
 extern "C" CDECL void aio_writedata(rust_task *task, socket_data *data,
                                     char *buf, size_t size, rust_chan *chan) {
   LOG_UPCALL_ENTRY(task);
+
+  // uv_buf_t is defined backwards on win32...
+  // maybe an indication we shouldn't be building directly?
+#if defined(__WIN32__)
+  uv_buf_t buffer = { size, buf };
+#else
   uv_buf_t buffer = { buf, size };
+#endif
+
   request *req = new (data->task, "write request")
     request(data, chan, write_complete);
   if (!req) {