Nancy,
Not silly at all. Keep in mind that with buffering you are making changes to a temporary copy of the data in memory. You start a transaction and do TableUpdates() which secures the necessary locks to write to the actual tables. If you issue a ROLLBACK that simply discards the transaction and releases the locks, but it does not clean the buffers (and it should not).
You ae left with a choice after the ROLLBACK, you can tablerevert or you can give the user a message telling them that the save failed and let them either try again by clicking the save button or click the revert button to discard the edit. I like this way better because I don't throw their work away, they do (usually after trying to save a dozen or so times first :-)).