Skip to content

Commit 7e0bd2d

Browse files
authored
fix clb nil pointer panic (#1763)
* fix clb nil pointer panic * add changelog * fix nil pointer for the related string method of helper.transform
1 parent 7cccfa9 commit 7e0bd2d

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

.changelog/1763.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:bug
2+
tencentcloud_clb_instance: fix the nil exception caused by the security_groups
3+
```

tencentcloud/internal/helper/transform.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,19 @@ func PInt64(pointer *int64) int64 {
8585
func InterfacesStrings(configured []interface{}) []string {
8686
vs := make([]string, 0, len(configured))
8787
for _, v := range configured {
88-
vs = append(vs, v.(string))
88+
if v != nil {
89+
vs = append(vs, v.(string))
90+
}
8991
}
9092
return vs
9193
}
9294

9395
func InterfacesStringsPoint(configured []interface{}) []*string {
9496
vs := make([]*string, 0, len(configured))
9597
for _, v := range configured {
96-
vs = append(vs, String(v.(string)))
98+
if v != nil {
99+
vs = append(vs, String(v.(string)))
100+
}
97101
}
98102
return vs
99103
}

tencentcloud/resource_tc_clb_instance.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -506,8 +506,10 @@ func resourceTencentCloudClbInstanceCreate(d *schema.ResourceData, meta interfac
506506
securityGroups := v.([]interface{})
507507
sgRequest.SecurityGroups = make([]*string, 0, len(securityGroups))
508508
for i := range securityGroups {
509-
securityGroup := securityGroups[i].(string)
510-
sgRequest.SecurityGroups = append(sgRequest.SecurityGroups, &securityGroup)
509+
if securityGroups[i] != nil {
510+
securityGroup := securityGroups[i].(string)
511+
sgRequest.SecurityGroups = append(sgRequest.SecurityGroups, &securityGroup)
512+
}
511513
}
512514
err := resource.Retry(writeRetryTimeout, func() *resource.RetryError {
513515
sgResponse, e := meta.(*TencentCloudClient).apiV3Conn.UseClbClient().SetLoadBalancerSecurityGroups(sgRequest)

0 commit comments

Comments
 (0)