while ((current = read(f->fd, &c, 1)) && c != '\n' && c != '\0' && total++ < f->width)
*b++ = c;
if (current == -1) {
error("Failed to read: \"%s\". Error: %s\n", f->name, strerror(errno));
fifo_read_error(f, buf);
while ((current = read(f->fd, &c, 1)) && c != '\n' && c != '\0' && total++ < f->width)
*b++ = c;
if (current == -1) {
error("Failed to read: \"%s\". Error: %s\n", f->name, strerror(errno));
fifo_read_error(f, buf);