From 8ed9b99dba3dc0d8f0a9226f9b2ecfe032e842a1 Mon Sep 17 00:00:00 2001 From: Sean Hefty Date: Thu, 16 Aug 2012 14:23:59 -0700 Subject: [PATCH] refresh (create temporary patch) --- meta | 5 +++-- patches/refresh-temp | 36 ++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 patches/refresh-temp diff --git a/meta b/meta index 24c985b8..94260c69 100644 --- a/meta +++ b/meta @@ -1,6 +1,6 @@ Version: 1 -Previous: 0c7bb2eb056a48750ad300a27d687c06ade45d35 -Head: 6bb438e80dd6dee5ab2d84cd9c9f47f0f9b0c4a1 +Previous: 4e5c57375b9fc02d719ebf4e2ca1bfe40d1cb81c +Head: 3226b1f523058674e3040ef4d3e19b58d71300a6 Applied: real-close: 3409f8d6af187d25c63a5d1f8ee8bff5f14555e2 dup2: ca5813e7cf95dee5933fc417e4a34d26f2b01824 @@ -10,6 +10,7 @@ Applied: sendfile: 9073427ddddfa2f7c93d0ac4a6da9844cb7d2960 fstat: a957d5786c30dfb1da9cf9345e4a639f6006fbda waitall-buggy: 6bb438e80dd6dee5ab2d84cd9c9f47f0f9b0c4a1 + refresh-temp: 3226b1f523058674e3040ef4d3e19b58d71300a6 Unapplied: dbg-out: 4b4c0572eab77856d8fbb919b1feb8f3502a101a dbg: 0c269855776d3001e37da8c8afe283c20e1d6cd6 diff --git a/patches/refresh-temp b/patches/refresh-temp new file mode 100644 index 00000000..468140a4 --- /dev/null +++ b/patches/refresh-temp @@ -0,0 +1,36 @@ +Bottom: f0b4d530a7758f20a79b3abc8f27419ecb1fc961 +Top: 82b0aedfaff9c5dc6df2e8b45d95f760cc338281 +Author: Sean Hefty +Date: 2012-08-16 14:23:58 -0700 + +Refresh of waitall-buggy + +--- + +diff --git a/src/rsocket.c b/src/rsocket.c +index 13fd0da..8c9e847 100644 +--- a/src/rsocket.c ++++ b/src/rsocket.c +@@ -1143,7 +1143,7 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags) + if (flags & MSG_PEEK) { + // fixme or will peek same data in waitall loop + left -= rs_peek(rs, &buf, left); +- continue; ++ break; + } + + for (; left && rs_have_rdata(rs); left -= rsize) { +@@ -1164,12 +1164,13 @@ ssize_t rrecv(int socket, void *buf, size_t len, int flags) + buf += end_size; + rsize -= end_size; + left -= end_size; ++ rs->rbuf_bytes_avail += end_size; + } + memcpy(buf, &rs->rbuf[rs->rbuf_offset], rsize); + rs->rbuf_offset += rsize; + buf += rsize; ++ rs->rbuf_bytes_avail += rsize; + } +- rs->rbuf_bytes_avail += len - left; // <- fixme in waitall loop + + } while ((flags & MSG_WAITALL) && (rs->state & rs_connect_rd) && left); -- 2.41.0