Some editors (like TextMate and at least my configuration of Vim) save
the file using an "atomic write".
They write the file to a new, temporary filename, and then rename the new
filename to the old filename. This assures that the file is never
"half-written" or corrupted in case of a crash.
The solicit() code didn't support this. By using seek() to rewind the
file pointer he was assuming that the editor was reusing the same inode.