VSS requestor calls abort after the timeout of the backup operation
expires. In the result later the process hangs on some internal VSS
lock. Cancel async snapshot before abort.
Signed-off-by: Alexander Ivanov <alexander.ivanov@virtuozzo.com>
---
qga/vss-win32/requester.cpp | 1 +
1 file changed, 1 insertion(+)
diff --git a/qga/vss-win32/requester.cpp b/qga/vss-win32/requester.cpp
index 9884c65e70..20680a42a1 100644
--- a/qga/vss-win32/requester.cpp
+++ b/qga/vss-win32/requester.cpp
@@ -533,6 +533,7 @@ void requester_freeze(int *num_vols, void *mountpoints, ErrorSet *errset)
}
if (wait_status != WAIT_OBJECT_0) {
+ vss_ctx.pAsyncSnapshot->Cancel();
err_set(errset, E_FAIL,
"couldn't receive Frozen event from VSS provider");
goto out;
--
2.34.1