ref: e725771b5d8a78fd8ade6062925894cfe3f1d4d1
parent: 7cdc13accc1735d6b047d3e99f69df023b221908
author: cinap_lenrek <[email protected]>
date: Sun Mar 1 00:39:45 EST 2015
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.
--- a/sys/src/libdraw/readsubfont.c
+++ b/sys/src/libdraw/readsubfont.c
@@ -19,7 +19,7 @@
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 @@
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;
}
--- a/sys/src/libmemdraw/openmemsubfont.c
+++ b/sys/src/libmemdraw/openmemsubfont.c
@@ -20,7 +20,7 @@
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 @@
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;
}