The virNetworkObjSetMacMap() API effectively steals passed
@macmap argument. However, the argument is a plain, first order
pointer. This requires every caller to set the argument to NULL
after the function was called. Let's make the function take
double pointer instead to make it obvious that the argument is
consumed.
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
void
virNetworkObjSetMacMap(virNetworkObj *obj,
- virMacMap *macmap)
+ virMacMap **macmap)
{
- obj->macmap = macmap;
+ obj->macmap = g_steal_pointer(macmap);
}
void
virNetworkObjSetMacMap(virNetworkObj *obj,
- virMacMap *macmap);
+ virMacMap **macmap);
void
virNetworkObjUnrefMacMap(virNetworkObj *obj);
if (!(macmap = virMacMapNew(macMapFile)))
return -1;
- virNetworkObjSetMacMap(obj, macmap);
- macmap = NULL;
+ virNetworkObjSetMacMap(obj, &macmap);
break;
!(macmap = virMacMapNew(macMapFile)))
goto error;
- virNetworkObjSetMacMap(obj, macmap);
- macmap = NULL;
+ virNetworkObjSetMacMap(obj, &macmap);
/* Set bridge options */