Browse Source

fix buffer_get

master
Felix von Leitner 7 years ago
parent
commit
fa5ffbb19b
  1. 1
      CHANGES
  2. 3
      buffer/buffer_get.c

1
CHANGES

@ -15,6 +15,7 @@
switch io_fds from array to newly implemented (hopefully thread-safe) iarray
switch epoll from level triggering to edge triggering
introduce io_eagain_read and io_eagain_write (discontinue using io_eagain plz)
fix buffer_get
0.29:
save 8 bytes in taia.h for 64-bit systems

3
buffer/buffer_get.c

@ -7,7 +7,8 @@ ssize_t buffer_get(buffer* b,char* x,size_t len) {
done=0;
if ((ssize_t)len < 0) len=(ssize_t)(((size_t)-1)>>1);
while (len) {
if ((blen=buffer_feed(b))<=0) return blen;
if ((blen=buffer_feed(b))<0) return blen;
if (blen==0) break;
if (blen>=(ssize_t)len)
blen=(ssize_t)len;
byte_copy(x,(size_t)blen,b->x+b->p);

Loading…
Cancel
Save