diff --git a/etc/Patches/Qt-v4.8.0-QProcess-BreakawayFromJob.V1.diff b/etc/Patches/Qt-v4.8.0-QProcess-BreakawayFromJob.V1.diff new file mode 100644 index 00000000..bbc0dbca --- /dev/null +++ b/etc/Patches/Qt-v4.8.0-QProcess-BreakawayFromJob.V1.diff @@ -0,0 +1,21 @@ +diff --git "a/E:\\QtSDK\\QtSources\\4.8.0\\src\\corelib\\io\\qprocess_win.old" "b/E:\\QtSDK\\QtSources\\4.8.0\\src\\corelib\\io\\qprocess_win.cpp" +index 510f723..e82bbec 100644 +--- "a/E:\\QtSDK\\QtSources\\4.8.0\\src\\corelib\\io\\qprocess_win.old" ++++ "b/E:\\QtSDK\\QtSources\\4.8.0\\src\\corelib\\io\\qprocess_win.cpp" +@@ -413,6 +413,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, +@@ -858,7 +859,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 diff --git a/src/Config.h b/src/Config.h index 297f26e8..384a1062 100644 --- a/src/Config.h +++ b/src/Config.h @@ -30,7 +30,7 @@ #define VER_LAMEXP_MINOR_LO 4 #define VER_LAMEXP_TYPE Beta #define VER_LAMEXP_PATCH 3 -#define VER_LAMEXP_BUILD 897 +#define VER_LAMEXP_BUILD 898 /////////////////////////////////////////////////////////////////////////////// // Tool versions (minimum expected versions!) diff --git a/src/Tool_Abstract.cpp b/src/Tool_Abstract.cpp index 78353f6a..46dbf9f4 100644 --- a/src/Tool_Abstract.cpp +++ b/src/Tool_Abstract.cpp @@ -94,6 +94,10 @@ AbstractTool::AbstractTool(void) CloseHandle(jobObject); } } + else + { + qWarning("Failed to create the job object!"); + } } } else