virStorageEncryptionSecretPtr may have a string inside it, thus we must
copy the string too. Use virSecretLookupDefCopy to do that.
Caused by non-obvious code introduced in
756b46ddd24 and later
47e88b33b
which added a string that needed to be copied.
https://bugzilla.redhat.com/show_bug.cgi?id=
1814923
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
static virStorageEncryptionSecretPtr
virStorageEncryptionSecretCopy(const virStorageEncryptionSecret *src)
{
- virStorageEncryptionSecretPtr ret;
-
- if (VIR_ALLOC(ret) < 0)
- return NULL;
+ virStorageEncryptionSecretPtr ret = g_new0(virStorageEncryptionSecret, 1);
- memcpy(ret, src, sizeof(*src));
+ ret->type = src->type;
+ virSecretLookupDefCopy(&ret->seclookupdef, &src->seclookupdef);
return ret;
}