You omitted how is this function called. I assume it is added to save_post
action.
This action passes current post id as argument. In case of revision that would be revision id and not parent post id. So, as I see it, there is no reason to save additional data for revision (creating duplicate set of it).
Update.
Scratch that.
I looked through source code. Apparently *_post_meta
functions will automatically change to parent post id if passed revision post id. So you might modify original post, thinking you are modifying revision.