don't call "dispose" on each execution in case of compound callback