v4.6.3 had a few serious bugs, which could explain the warning (which v4.6.4 doesn't show) and the crash you got. Try v4.6.4...
The original implementation used:
Which was wrong and could cause to miss the last lines of the log file (because, depending on the way it is implemented, fgets() coud set the EOF marker when it notices it read the last byte in the log, and then !feof(fp) would be false, causing the chunk that just got fetched to be skipped), and that's why I moved fgets() inside the while() loop.
For the next releases, I simply got rid of the (actually redundant, since fgets() does test for EOF and returns NULL when at EOF) !feof(fp) in the while() and put the fgets() in its place: this way there will be unused return value and we cover the (improbable, but theoretically possible) case where: 1.- the file seeks OK and is not at EOF, 2.- fgets() fails due to a read error (i.e. the file is on a bad sector of a bad medium), 3.- the fgets() implementation doesn't add a '\0' character in the buffer when it errors out during a read (this is not in fgets() implementation specifications, so it depends on the implementer), 4.- the buffer doesn't contain any '\0' character, causing the next strlen() to overflow it and trigger a segfault...