From e725771b5d8a78fd8ade6062925894cfe3f1d4d1 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sun, 1 Mar 2015 05:39:45 +0100 Subject: libdraw: use readn() to read headers and Fontchar array the Fontchar array might be bigger than the i/o unit, so we have to use readn() to properly read it. --- sys/src/libdraw/readsubfont.c | 4 ++-- sys/src/libmemdraw/openmemsubfont.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/sys/src/libdraw/readsubfont.c b/sys/src/libdraw/readsubfont.c index 52c191559..df2067912 100644 --- a/sys/src/libdraw/readsubfont.c +++ b/sys/src/libdraw/readsubfont.c @@ -19,7 +19,7 @@ readsubfonti(Display*d, char *name, int fd, Image *ai, int dolock) return nil; } p = nil; - if(read(fd, hdr, 3*12) != 3*12){ + if(readn(fd, hdr, 3*12) != 3*12){ werrstr("readsubfont: header read error: %r"); goto Err; } @@ -31,7 +31,7 @@ readsubfonti(Display*d, char *name, int fd, Image *ai, int dolock) p = malloc(6*(n+1)); if(p == nil) goto Err; - if(read(fd, p, 6*(n+1)) != 6*(n+1)){ + if(readn(fd, p, 6*(n+1)) != 6*(n+1)){ werrstr("readsubfont: fontchar read error: %r"); goto Err; } diff --git a/sys/src/libmemdraw/openmemsubfont.c b/sys/src/libmemdraw/openmemsubfont.c index 03bb3edc5..1a17cfde6 100644 --- a/sys/src/libmemdraw/openmemsubfont.c +++ b/sys/src/libmemdraw/openmemsubfont.c @@ -20,7 +20,7 @@ openmemsubfont(char *name) i = readmemimage(fd); if(i == nil) goto Err; - if(read(fd, hdr, 3*12) != 3*12){ + if(readn(fd, hdr, 3*12) != 3*12){ werrstr("openmemsubfont: header read error: %r"); goto Err; } @@ -32,7 +32,7 @@ openmemsubfont(char *name) p = malloc(6*(n+1)); if(p == nil) goto Err; - if(read(fd, p, 6*(n+1)) != 6*(n+1)){ + if(readn(fd, p, 6*(n+1)) != 6*(n+1)){ werrstr("openmemsubfont: fontchar read error: %r"); goto Err; } -- cgit v1.2.3