Instead of checking if it's different than None, we should check if it's callable, since the user may have overridden it with whatever object.