To the first part: just a precaution so that we don't get double events and have to track down some obscure bug.
To the second: See the function details below....which you already did :)