From c8dfecc65ffd76600da42d0e1234ab1223efda93 Mon Sep 17 00:00:00 2001 From: Brett Mack Date: Tue, 17 Nov 2015 11:40:37 +0000 Subject: [PATCH] Check where nested structs could possibly be nil before trying to access their data --- builtin/providers/vcd/resource_vcd_network.go | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/builtin/providers/vcd/resource_vcd_network.go b/builtin/providers/vcd/resource_vcd_network.go index a44aadb1f9..3cb7b8f707 100644 --- a/builtin/providers/vcd/resource_vcd_network.go +++ b/builtin/providers/vcd/resource_vcd_network.go @@ -212,11 +212,15 @@ func resourceVcdNetworkRead(d *schema.ResourceData, meta interface{}) error { d.Set("name", network.OrgVDCNetwork.Name) d.Set("href", network.OrgVDCNetwork.HREF) - d.Set("fence_mode", network.OrgVDCNetwork.Configuration.FenceMode) - d.Set("gateway", network.OrgVDCNetwork.Configuration.IPScopes.IPScope.Gateway) - d.Set("netmask", network.OrgVDCNetwork.Configuration.IPScopes.IPScope.Netmask) - d.Set("dns1", network.OrgVDCNetwork.Configuration.IPScopes.IPScope.DNS1) - d.Set("dns2", network.OrgVDCNetwork.Configuration.IPScopes.IPScope.DNS2) + if c := network.OrgVDCNetwork.Configuration; c != nil { + d.Set("fence_mode", c.FenceMode) + if c.IPScopes != nil { + d.Set("gateway", c.IPScopes.IPScope.Gateway) + d.Set("netmask", c.IPScopes.IPScope.Netmask) + d.Set("dns1", c.IPScopes.IPScope.DNS1) + d.Set("dns2", c.IPScopes.IPScope.DNS2) + } + } return nil }