Compare commits

..

2 commits

Author SHA1 Message Date
Eric
a90a6901cc Merge branch 'dev' of hiajen-forgejo:/penpen/b64 into dev 2025-05-29 13:56:15 +02:00
Eric
debab62506 remove getsxts for better function readb
Decoding input is read faster now.
With this, all options have been tuned to a reasonable degree.
2025-05-29 13:48:49 +02:00

27
input.c
View file

@ -5,19 +5,24 @@
int
readb(FILE *fp, unsigned char *s, int slen)
{
unsigned char *send;
unsigned char *sbeg;
int read, tread;
unsigned char *send, *sbeg;
unsigned char *l, *r;
sbeg = s;
send = s + fread(s, sizeof(*s), slen, fp);
for (l = r = sbeg; r < send; ++r)
if (*r != '\n')
*l++ = *r;
if (l > sbeg) {
for (--l; *l == PADDING; --l)
;
++l;
read = tread = 0;
sbeg = l = r = s;
while (tread < slen && (read = fread(l, sizeof(*l), slen-tread, fp))) {
tread += read;
send = s + tread;
for (r = l; r < send; ++r)
if (*r != '\n')
*l++ = *r;
tread -= r - l;
if (l > sbeg) {
for (--l; *l == PADDING; --l)
;
++l;
}
}
return l-sbeg;