Message ID | 1341983345-25255-1-git-send-email-sw@weilnetz.de |
---|---|
State | Accepted |
Headers | show |
On 11.07.2012 09:09, Stefan Weil wrote: > Commit 25e5e4c7 broke compilation for non POSIX hosts (e.g. MinGW) > because it partially replaced "ret" by "count". > > It also changed the handling of EINTR in a wrong way. > > The patch restores the old code for these two changes. > > Signed-off-by: Stefan Weil <sw@weilnetz.de> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> Granted, I never _ever_ tested or even compiled this part. Should have been. Thank you Stefan! /mjt
Am 11.07.2012 07:25, schrieb Michael Tokarev: > On 11.07.2012 09:09, Stefan Weil wrote: >> Commit 25e5e4c7 broke compilation for non POSIX hosts (e.g. MinGW) >> because it partially replaced "ret" by "count". >> >> It also changed the handling of EINTR in a wrong way. >> >> The patch restores the old code for these two changes. >> >> Signed-off-by: Stefan Weil <sw@weilnetz.de> > > Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> > > Granted, I never _ever_ tested or even compiled this > part. Should have been. Thank you Stefan! Then I guess you should not have sent a pull request. :-) Kevin
Il 11/07/2012 14:39, Kevin Wolf ha scritto: > Am 11.07.2012 07:25, schrieb Michael Tokarev: >> On 11.07.2012 09:09, Stefan Weil wrote: >>> Commit 25e5e4c7 broke compilation for non POSIX hosts (e.g. MinGW) >>> because it partially replaced "ret" by "count". >>> >>> It also changed the handling of EINTR in a wrong way. >>> >>> The patch restores the old code for these two changes. >>> >>> Signed-off-by: Stefan Weil <sw@weilnetz.de> >> >> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru> >> >> Granted, I never _ever_ tested or even compiled this >> part. Should have been. Thank you Stefan! > > Then I guess you should not have sent a pull request. :-) Not that Anthony would have tested mingw... Paolo
On 07/11/2012 08:15 AM, Paolo Bonzini wrote: > Il 11/07/2012 14:39, Kevin Wolf ha scritto: >> Am 11.07.2012 07:25, schrieb Michael Tokarev: >>> On 11.07.2012 09:09, Stefan Weil wrote: >>>> Commit 25e5e4c7 broke compilation for non POSIX hosts (e.g. MinGW) >>>> because it partially replaced "ret" by "count". >>>> >>>> It also changed the handling of EINTR in a wrong way. >>>> >>>> The patch restores the old code for these two changes. >>>> >>>> Signed-off-by: Stefan Weil<sw@weilnetz.de> >>> >>> Signed-off-by: Michael Tokarev<mjt@tls.msk.ru> >>> >>> Granted, I never _ever_ tested or even compiled this >>> part. Should have been. Thank you Stefan! >> >> Then I guess you should not have sent a pull request. :-) > > Not that Anthony would have tested mingw... Nope. It's not efficient to rely on the maintainer to do your testing for you. If you modify code in a non-trivial way, you should attempt to test it. Anyway, I'll apply this patch ASAP. Regards, Anthony Liguori > > Paolo > >
diff --git a/iov.c b/iov.c index 7cc08f0..b333061 100644 --- a/iov.c +++ b/iov.c @@ -114,9 +114,9 @@ do_send_recv(int sockfd, struct iovec *iov, unsigned iov_cnt, bool do_send) #else /* else send piece-by-piece */ /*XXX Note: windows has WSASend() and WSARecv() */ - unsigned i; - size_t count = 0; - for (i = 0; i < iov_cnt; ++i) { + unsigned i = 0; + ssize_t ret = 0; + while (i < iov_cnt) { ssize_t r = do_send ? send(sockfd, iov[i].iov_base, iov[i].iov_len, 0) : recv(sockfd, iov[i].iov_base, iov[i].iov_len, 0); @@ -130,12 +130,13 @@ do_send_recv(int sockfd, struct iovec *iov, unsigned iov_cnt, bool do_send) /* else it is some "other" error, * only return if there was no data processed. */ if (ret == 0) { - return -1; + ret = -1; } break; } + i++; } - return count; + return ret; #endif }
Commit 25e5e4c7 broke compilation for non POSIX hosts (e.g. MinGW) because it partially replaced "ret" by "count". It also changed the handling of EINTR in a wrong way. The patch restores the old code for these two changes. Signed-off-by: Stefan Weil <sw@weilnetz.de> --- iov.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-)