LameXP/etc/Patches/Qt-v4.8.5-QProcess-JobObjectsBugfix.V1.diff

22 lines
1.4 KiB
Diff

diff --git "a/D:\\Qt\\QtSource\\4.8.5-VS2013\\src\\corelib\\io\\qprocess_win.ori" "b/D:\\Qt\\QtSource\\4.8.5-VS2013\\src\\corelib\\io\\qprocess_win.cpp"
index 6cf6d65..3b5c4fb 100644
--- "a/D:\\Qt\\QtSource\\4.8.5-VS2013\\src\\corelib\\io\\qprocess_win.ori"
+++ "b/D:\\Qt\\QtSource\\4.8.5-VS2013\\src\\corelib\\io\\qprocess_win.cpp"
@@ -414,6 +414,7 @@ void QProcessPrivate::startProcess()
#else
DWORD dwCreationFlags = CREATE_NO_WINDOW;
dwCreationFlags |= CREATE_UNICODE_ENVIRONMENT;
+ dwCreationFlags |= CREATE_BREAKAWAY_FROM_JOB;
STARTUPINFOW startupInfo = { sizeof( STARTUPINFO ), 0, 0, 0,
(ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT,
(ulong)CW_USEDEFAULT, (ulong)CW_USEDEFAULT,
@@ -859,7 +860,7 @@ bool QProcessPrivate::startDetached(const QString &program, const QStringList &a
0, 0, 0, 0, 0, 0, 0, 0, 0, 0
};
success = CreateProcess(0, (wchar_t*)args.utf16(),
- 0, 0, FALSE, CREATE_UNICODE_ENVIRONMENT | CREATE_NEW_CONSOLE, 0,
+ 0, 0, FALSE, CREATE_UNICODE_ENVIRONMENT | CREATE_NEW_CONSOLE | CREATE_BREAKAWAY_FROM_JOB, 0,
workingDir.isEmpty() ? 0 : (wchar_t*)workingDir.utf16(),
&startupInfo, &pinfo);
#endif // Q_OS_WINCE