mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-20 07:59:00 +00:00
util: eventpoll: use VIR_AUTOFREE instead of VIR_FREE for scalar types
By making use of GNU C's cleanup attribute handled by the VIR_AUTOFREE macro for declaring scalar variables, majority of the VIR_FREE calls can be dropped, which in turn leads to getting rid of most of our cleanup sections. Signed-off-by: Sukrit Bhatnagar <skrtbhtngr@gmail.com> Reviewed-by: Erik Skultety <eskultet@redhat.com>
This commit is contained in:
parent
10f888e64e
commit
d2576d3bbe
@ -618,7 +618,7 @@ static void virEventPollCleanupHandles(void)
|
|||||||
*/
|
*/
|
||||||
int virEventPollRunOnce(void)
|
int virEventPollRunOnce(void)
|
||||||
{
|
{
|
||||||
struct pollfd *fds = NULL;
|
VIR_AUTOFREE(struct pollfd *) fds = NULL;
|
||||||
int ret, timeout, nfds;
|
int ret, timeout, nfds;
|
||||||
|
|
||||||
virMutexLock(&eventLoop.lock);
|
virMutexLock(&eventLoop.lock);
|
||||||
@ -645,7 +645,7 @@ int virEventPollRunOnce(void)
|
|||||||
goto retry;
|
goto retry;
|
||||||
virReportSystemError(errno, "%s",
|
virReportSystemError(errno, "%s",
|
||||||
_("Unable to poll on file handles"));
|
_("Unable to poll on file handles"));
|
||||||
goto error_unlocked;
|
return -1;
|
||||||
}
|
}
|
||||||
EVENT_DEBUG("Poll got %d event(s)", ret);
|
EVENT_DEBUG("Poll got %d event(s)", ret);
|
||||||
|
|
||||||
@ -662,13 +662,10 @@ int virEventPollRunOnce(void)
|
|||||||
|
|
||||||
eventLoop.running = 0;
|
eventLoop.running = 0;
|
||||||
virMutexUnlock(&eventLoop.lock);
|
virMutexUnlock(&eventLoop.lock);
|
||||||
VIR_FREE(fds);
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
error:
|
error:
|
||||||
virMutexUnlock(&eventLoop.lock);
|
virMutexUnlock(&eventLoop.lock);
|
||||||
error_unlocked:
|
|
||||||
VIR_FREE(fds);
|
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user