+ bool ok[2] = { false, false }; \
+ unsigned int progressInt = (X)->cap(1).toUInt(&ok[0]); \
+ unsigned int progressFrc = (X)->cap(2).toUInt(&ok[1]); \
+ setStatus(JobStatus_Running); \
+ if(ok[0] && ok[1]) \
+ { \
+ const double progress = (double(progressInt) / 100.0) + (double(progressFrc) / 1000.0); \
+ if(!qFuzzyCompare(progress, last_progress)) \
+ { \
+ setProgress(floor(progress * 100.0)); \
+ size_estimate = qFuzzyIsNull(size_estimate) ? estimateSize(m_outputFile, progress) : ((0.667 * size_estimate) + (0.333 * estimateSize(m_outputFile, progress))); \
+ last_progress = progress; \
+ } \
+ } \
+ setDetails(line.mid(offset).trimmed()); \
+} \
+while(0)
+
+#define NVENCC_UPDATE_PROGRESS_OLD(X) do \
+{ \