signed, unsigned fix - sob - simple output bar
 (HTM) git clone git://git.codemadness.org/sob
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 0b974dd40e0a43e83656172f1af3067a438b86c4
 (DIR) parent 611985a88db127b299c44e334577c447457d4fd3
 (HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
       Date:   Fri, 24 Oct 2014 22:46:27 +0000
       
       signed, unsigned fix
       
       Diffstat:
         M sob.c                               |      14 ++++++++------
       
       1 file changed, 8 insertions(+), 6 deletions(-)
       ---
 (DIR) diff --git a/sob.c b/sob.c
       @@ -550,7 +550,8 @@ line_copywordcursor(char *buf, size_t bufsiz)
        
        static int
        readfd(int fd, char *buf, size_t len) {
       -        size_t r, i = 0;
       +        size_t i = 0;
       +        ssize_t r;
        
                while(len > 0) {
                        if((r = read(fd, &buf[i], len)) == -1) {
       @@ -562,15 +563,16 @@ readfd(int fd, char *buf, size_t len) {
                        } else if(r == 0) {
                                return i;
                        }
       -                i += r;
       -                len -= r;
       +                i += (size_t)r;
       +                len -= (size_t)r;
                }
                return i;
        }
        
        static int
        writefd(int fd, char *buf, size_t len) {
       -        size_t w, i = 0;
       +        size_t i = 0;
       +        ssize_t w;
        
                while(len > 0) {
                        if((w = write(fd, &buf[i], len)) == -1) {
       @@ -582,8 +584,8 @@ writefd(int fd, char *buf, size_t len) {
                        } else if(w == 0) {
                                return i;
                        }
       -                i += w;
       -                len -= w;
       +                i += (size_t)w;
       +                len -= (size_t)w;
                }
                return i;
        }