Having started debugging this, it appears that we reach line 529 of daisy-player.c, i.e., read() returns -1. Interestingly, errno = 0 according to gdb, i.e., "print errno" shows a value of 0. We are at the end of the file, apparently: "print p" shows "</html>" as the content of the buffer.