mirror of
https://github.com/libvirt/libvirt.git
synced 2025-01-06 14:13:27 -06:00
ch_monitor: Report OS error when removing socket fails
When removing a socket in virCHMonitorClose() fails, a warning is printed. But it doesn't contain errno nor g_strerror() which may shed more light into why removing of the socket failed. Oh, and since virCHMonitorClose() is registered as autoptr cleanup for virCHMonitor() it may happen that virCHMonitorClose() is called with mon->socketpath allocated but file not existing yet (see virCHMonitorNew()). Thus ignore ENOENT and do not print warning in that case - the file doesn't exist anyways. Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
f1f4cbb50a
commit
d88ebd4374
@ -622,9 +622,10 @@ void virCHMonitorClose(virCHMonitor *mon)
|
||||
curl_easy_cleanup(mon->handle);
|
||||
|
||||
if (mon->socketpath) {
|
||||
if (virFileRemove(mon->socketpath, -1, -1) < 0) {
|
||||
VIR_WARN("Unable to remove CH socket file '%s'",
|
||||
mon->socketpath);
|
||||
if (virFileRemove(mon->socketpath, -1, -1) < 0 &&
|
||||
errno != ENOENT) {
|
||||
VIR_WARN("Unable to remove CH socket file '%s': %s",
|
||||
mon->socketpath, g_strerror(errno));
|
||||
}
|
||||
g_clear_pointer(&mon->socketpath, g_free);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user