fix #650 Callback object modified when called using apply

This allows callbacks to be called multiple times