From 6ccfcfb8e61d3142f909fccf5689e2e9f8ad74c3 Mon Sep 17 00:00:00 2001 From: Debian Qt/KDE Maintainers Date: Tue, 5 Feb 2013 21:52:29 +0000 Subject: [PATCH] _hppa_bug561203_decrease_failure_rate ~1/1000 when run in a row. Hopefully, this will make failures rare enough not to cause FTBFSes. Degradation in performance should not be very significant and is acceptable. Author: Modestas Vainius Author: Fathi Boudra Forwarded: not-needed Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=561203 Origin: vendor Last-Update: 2011-12-26 Gbp-Pq: Name 99_hppa_bug561203_decrease_failure_rate.diff --- src/corelib/io/qprocess_unix.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/corelib/io/qprocess_unix.cpp b/src/corelib/io/qprocess_unix.cpp index b69961178..e7465e1f4 100644 --- a/src/corelib/io/qprocess_unix.cpp +++ b/src/corelib/io/qprocess_unix.cpp @@ -526,6 +526,13 @@ static char **_q_dupEnvironment(const QProcessEnvironmentPrivate::Hash &environm return envp; } +inline void debbug_561203() +{ +#if defined(__linux__) && defined(__hppa__) + usleep(1000); +#endif +} + #ifdef Q_OS_MAC Q_GLOBAL_STATIC(QMutex, cfbundleMutex); #endif @@ -647,6 +654,7 @@ void QProcessPrivate::startProcess() #if defined(Q_OS_QNX) pid_t childPid = spawnChild(workingDirPtr, argv, envp); #else + debbug_561203(); pid_t childPid = fork(); int lastForkErrno = errno; #endif @@ -1340,6 +1348,7 @@ bool QProcessPrivate::startDetached(const QString &program, const QStringList &a int pidPipe[2]; qt_safe_pipe(pidPipe); + debbug_561203(); pid_t childPid = fork(); if (childPid == 0) { struct sigaction noaction; @@ -1352,6 +1361,7 @@ bool QProcessPrivate::startDetached(const QString &program, const QStringList &a qt_safe_close(startedPipe[0]); qt_safe_close(pidPipe[0]); + debbug_561203(); pid_t doubleForkPid = fork(); if (doubleForkPid == 0) { qt_safe_close(pidPipe[1]); -- 2.30.2