Don't mask NoMethodErrors
This rescue was masking a bug in a provider (involving calling [] on
nil.NilClass) with a misleading error message. The new code asks
permission rather than begging forgiveness, but is more specific to the
problem being detected.