If the semicolon is seen as a terminator instead of a separator, maybe nothing additional should be added if no semicolon is found? Currently what it seems to do if there is no trailing semi colon is it takes the next css block and adds the vendor prefix to it. This repeats itself for how many vendor prefixes there are of that type. So in the end you could have multiple extra blocks of css code with the wrong declarations attached to it (in the worst case scenario it copied the entire next stylesheet a few times adding the prefix to it). The resulting behaviour will probably be different than I described as well since this was applied http://xenforo.com/community/threads/incorrect-css3-prefixes-position.47117/. It's possible that even fixes it unknowingly.
I think I remembering running into this issue a long time ago, but never reported it, probably thought it wasn't worth fixing, but after running into it again, mind as well report it.