+ // leave the loop once we have processed all events that were present
+ // at the start of ProcessPendingEvents because otherwise we could get
+ // into infinite loop if the pending event handler execution resulted
+ // in another event being posted
+ if ( node == lastPendingNode )
+ break;
+