fix(dns): copy resource records on read

Co-Authored-By: Virgil <virgil@lethean.io>
This commit is contained in:
Virgil 2026-04-04 09:13:23 +00:00
parent 8b1dfb0129
commit 78503909a8
2 changed files with 7 additions and 1 deletions

View file

@ -45,7 +45,7 @@ func (r *Resource) GetRecords() []ResourceRecord {
return nil
}
return r.Records
return append([]ResourceRecord(nil), r.Records...)
}
// ResourceJSON represents the JSON form of a DNS resource.

View file

@ -296,6 +296,12 @@ func TestResourceTypeHelpers(t *testing.T) {
if got := resource.GetRecords(); len(got) != len(resource.Records) {
t.Fatalf("GetRecords() = %d records, want %d", len(got), len(resource.Records))
}
gotRecords := resource.GetRecords()
gotRecords[0] = nil
if resource.Records[0] == nil {
t.Fatal("GetRecords should return a copy of the record slice")
}
}
func TestResourceRecordTypeAliases(t *testing.T) {