+ while (m_jobProcess->state() != QProcess::NotRunning) {
+ processLogInfo();
+ if (jobStatus == JOBABORTED) {
+ emit cancelRunningJob(m_clipId, cancelProperties());
+ m_jobProcess->close();
+ m_jobProcess->waitForFinished();
+ QFile::remove(m_dest);
+ }
+ m_jobProcess->waitForFinished(400);
+ }
+
+ if (jobStatus != JOBABORTED) {
+ int result = m_jobProcess->exitStatus();
+ if (result == QProcess::NormalExit) {
+ if (QFileInfo(m_dest).size() == 0) {
+ // File was not created
+ processLogInfo();
+ m_errorMessage.append(i18n("Failed to create proxy clip."));
+ setStatus(JOBCRASHED);
+ }
+ else setStatus(JOBDONE);
+ }
+ else if (result == QProcess::CrashExit) {
+ // Proxy process crashed
+ QFile::remove(m_dest);
+ setStatus(JOBCRASHED);
+ }
+ }
+
+ delete m_jobProcess;
+ return;