I once had this problem with processing:
In processing, event handlers would kick in anytime so If you alter data that was being used in a draw operation, things would fail. It was like the events were being handled in a different thread, and you were able to change the data the draw routine was using as things were being drawn on screen so you needed to take extra measures. At least this was my observation.
In openframeworks, I suspect, this is not the case, I can change some stuff in mouse-keyboard event handling routines and they seem to cause no problems. Is this the safe way to do things? Or should I use event handlers as flag-setters that would be checked in every update operation as in processing?