OSDN Git Service

Fix regular expression for new version of Monkey's Audio.
[lamexp/LameXP.git] / src / Decoder_MAC.cpp
index b8755e2..621ce76 100644 (file)
@@ -57,8 +57,9 @@ bool MACDecoder::decode(const QString &sourceFile, const QString &outputFile, vo
 
        bool bTimeout = false;
        bool bAborted = false;
+       int prevProgress = -1;
 
-       QRegExp regExp("Progress: (\\d+)%");
+       QRegExp regExp("Progress: (\\d+).(\\d+)%");
 
        while(process.state() != QProcess::NotRunning)
        {
@@ -86,7 +87,11 @@ bool MACDecoder::decode(const QString &sourceFile, const QString &outputFile, vo
                        {
                                bool ok = false;
                                int progress = regExp.cap(1).toInt(&ok);
-                               if(ok) emit statusUpdated(progress);
+                               if(ok && (progress > prevProgress))
+                               {
+                                       emit statusUpdated(progress);
+                                       prevProgress = qMin(progress + 2, 99);
+                               }
                        }
                        else if(!text.isEmpty())
                        {