diff --git a/models/t_txt.go b/models/t_txt.go index ec4d53428..bc01ed74c 100644 --- a/models/t_txt.go +++ b/models/t_txt.go @@ -69,6 +69,10 @@ func (rc *RecordConfig) GetTargetTXTSegmentCount() int { } func splitChunks(buf string, lim int) []string { + if len(buf) == 0 { + return nil + } + var chunk string chunks := make([]string, 0, len(buf)/lim+1) for len(buf) >= lim { diff --git a/providers/azuredns/azureDnsProvider.go b/providers/azuredns/azureDnsProvider.go index abe8c46dd..2d14e8254 100644 --- a/providers/azuredns/azureDnsProvider.go +++ b/providers/azuredns/azureDnsProvider.go @@ -521,8 +521,7 @@ func (a *azurednsProvider) recordToNativeDiff2(recordKey models.RecordKey, recor if recordSet.Properties.TxtRecords == nil { recordSet.Properties.TxtRecords = []*adns.TxtRecord{} } - // Empty TXT record needs to have no value set in it's properties - if !(rec.GetTargetTXTSegmentCount() == 1 && rec.GetTargetTXTSegmented()[0] == "") { + if rec.GetTargetTXTJoined() != "" { // Empty TXT record needs to have no value set in it's properties var txts []*string for _, txt := range rec.GetTargetTXTSegmented() { txts = append(txts, to.StringPtr(txt))