[libvirt PATCH 1/2] conf: fix g_new0 allocation
Laine Stump
laine at redhat.com
Mon Oct 12 20:49:04 UTC 2020
On 10/12/20 2:13 PM, Pavel Hrdina wrote:
> Fixes commit <a5d88ffe0ad9b5d5314ab0058c5b363f9f79b8ee> which changed
> allocation from VIR_ALLOC_N to g_new0 but missed some +1 on number of
> allocated elements.
>
> Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> ---
> src/conf/virinterfaceobj.c | 2 +-
> src/conf/virnetworkobj.c | 4 ++--
> src/conf/virnodedeviceobj.c | 2 +-
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/src/conf/virinterfaceobj.c b/src/conf/virinterfaceobj.c
> index 5a5fd65e14..e08b4b9b0f 100644
> --- a/src/conf/virinterfaceobj.c
> +++ b/src/conf/virinterfaceobj.c
> @@ -320,7 +320,7 @@ virInterfaceObjListExport(virConnectPtr conn,
>
> virObjectRWLockRead(ifaceobjs);
> if (ifaces)
> - data.ifaces = g_new0(virInterfacePtr, virHashSize(ifaceobjs->objsName));
> + data.ifaces = g_new0(virInterfacePtr, virHashSize(ifaceobjs->objsName) + 1);
>
> virHashForEach(ifaceobjs->objsName, virInterfaceObjListExportCallback, &data);
>
> diff --git a/src/conf/virnetworkobj.c b/src/conf/virnetworkobj.c
> index 1fcfa9cdc2..a2835ebf8e 100644
> --- a/src/conf/virnetworkobj.c
> +++ b/src/conf/virnetworkobj.c
> @@ -1407,7 +1407,7 @@ virNetworkObjListExport(virConnectPtr conn,
>
> virObjectRWLockRead(netobjs);
> if (nets)
> - data.nets = g_new0(virNetworkPtr, virHashSize(netobjs->objs));
> + data.nets = g_new0(virNetworkPtr, virHashSize(netobjs->objs) + 1);
>
> virHashForEach(netobjs->objs, virNetworkObjListExportCallback, &data);
>
> @@ -1801,7 +1801,7 @@ virNetworkObjPortListExport(virNetworkPtr net,
> if (ports) {
> *ports = NULL;
>
> - data.ports = g_new0(virNetworkPortPtr, virHashSize(obj->ports));
> + data.ports = g_new0(virNetworkPortPtr, virHashSize(obj->ports) + 1);
> }
>
> virHashForEach(obj->ports, virNetworkObjPortListExportCallback, &data);
> diff --git a/src/conf/virnodedeviceobj.c b/src/conf/virnodedeviceobj.c
> index 28905c67b6..9af80b8036 100644
> --- a/src/conf/virnodedeviceobj.c
> +++ b/src/conf/virnodedeviceobj.c
> @@ -931,7 +931,7 @@ virNodeDeviceObjListExport(virConnectPtr conn,
>
> virObjectRWLockRead(devs);
> if (devices)
> - data.devices = g_new0(virNodeDevicePtr, virHashSize(devs->objs));
> + data.devices = g_new0(virNodeDevicePtr, virHashSize(devs->objs) + 1);
>
> virHashForEach(devs->objs, virNodeDeviceObjListExportCallback, &data);
> virObjectRWUnlock(devs);
Reviewed-by: Laine Stump <laine at redhat.com>
More information about the libvir-list
mailing list