Make writes to the save-data fd work as one would expect them to.

#876.  It's not as useful to record the buffer at exit of write, because any number of events can occur in the intervening time and possibly change buffer contents.