changed the way callback is pulled from the arguments, since previously it was always set to false, due to the callback variable being a pointer