aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPavel Dovgaluk <Pavel.Dovgaluk@ispras.ru>2012-05-30 10:08:04 +0400
committerKevin Wolf <kwolf@redhat.com>2012-06-15 14:03:42 +0200
commitb75a02829dde98723dfe16fa098338cb267b28b9 (patch)
tree2ff2efe88db5c273ba84454d99b3a366eab8f754
parent79d21d5b8d986051169cc44557750bfc640559b1 (diff)
Prevent disk data loss when closing qemu
Prevent disk data loss when closing qemu console window under Windows 7. v3. Comment for Sleep() parameter was updated. Signed-off-by: Pavel Dovgalyuk<pavel.dovgaluk@gmail.com> Signed-off-by: Kevin Wolf <kwolf@redhat.com>
-rw-r--r--os-win32.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/os-win32.c b/os-win32.c
index ad76370c7c..13892ba320 100644
--- a/os-win32.c
+++ b/os-win32.c
@@ -57,7 +57,13 @@ int setenv(const char *name, const char *value, int overwrite)
static BOOL WINAPI qemu_ctrl_handler(DWORD type)
{
- exit(STATUS_CONTROL_C_EXIT);
+ qemu_system_shutdown_request();
+ /* Windows 7 kills application when the function returns.
+ Sleep here to give QEMU a try for closing.
+ Sleep period is 10000ms because Windows kills the program
+ after 10 seconds anyway. */
+ Sleep(10000);
+
return TRUE;
}