vz: restore accidentally removed locks around close callback calls

Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
This commit is contained in:
Nikolay Shirokovskiy 2016-06-14 11:45:53 +03:00 committed by Maxim Nestratov
parent 3eede43aab
commit 1e697ac9f3

View File

@ -1514,6 +1514,8 @@ vzConnectRegisterCloseCallback(virConnectPtr conn,
vzConnPtr privconn = conn->privateData;
int ret = -1;
virObjectLock(privconn->driver);
if (virConnectCloseCallbackDataGetCallback(privconn->closeCallback) != NULL) {
virReportError(VIR_ERR_OPERATION_INVALID, "%s",
_("A close callback is already registered"));
@ -1525,6 +1527,7 @@ vzConnectRegisterCloseCallback(virConnectPtr conn,
ret = 0;
cleanup:
virObjectUnlock(privconn->driver);
return ret;
}
@ -1535,6 +1538,7 @@ vzConnectUnregisterCloseCallback(virConnectPtr conn, virConnectCloseFunc cb)
vzConnPtr privconn = conn->privateData;
int ret = -1;
virObjectLock(privconn->driver);
if (virConnectCloseCallbackDataGetCallback(privconn->closeCallback) != cb) {
virReportError(VIR_ERR_OPERATION_INVALID, "%s",
@ -1546,6 +1550,7 @@ vzConnectUnregisterCloseCallback(virConnectPtr conn, virConnectCloseFunc cb)
ret = 0;
cleanup:
virObjectUnlock(privconn->driver);
return ret;
}