InitializeProvider does indeed check for null provider and null server name.
But I will push one more commit that is going to add a return value to initializeProvider and clean-up it's caller methods.