]> git.sesse.net Git - kdenlive/blobdiff - src/documentvalidator.cpp
Merge branch 'master' into feature/pkey
[kdenlive] / src / documentvalidator.cpp
index f18b73f23bb3fe0fb2dec8a841d2b86914a4324b..a0775b5c68636589f152f2a0b594e8300c8a6463 100644 (file)
@@ -60,7 +60,7 @@ bool DocumentValidator::validate(const double currentVersion)
     
     QString rootDir = mlt.attribute("root");
     if (rootDir == "$CURRENTPATH") {
-        // The document was extracted from a Kdenlive archived project, fix root directory$
+        // The document was extracted from a Kdenlive archived project, fix root directory
         QString playlist = m_doc.toString();
         playlist.replace("$CURRENTPATH", m_url.directory(KUrl::IgnoreTrailingSlash));
         m_doc.setContent(playlist);
@@ -73,7 +73,7 @@ bool DocumentValidator::validate(const double currentVersion)
     
     if (mlt.hasAttribute("LC_NUMERIC")) {
         // Set locale for the document        
-        QString newLocale = setlocale(LC_NUMERIC, mlt.attribute("LC_NUMERIC").toUtf8().constData());
+        const QString newLocale = setlocale(LC_NUMERIC, mlt.attribute("LC_NUMERIC").toUtf8().constData());
         documentLocale = QLocale(mlt.attribute("LC_NUMERIC"));
 
         // Make sure Qt locale and C++ locale have the same numeric separator, might not be the case
@@ -96,11 +96,13 @@ bool DocumentValidator::validate(const double currentVersion)
     documentLocale.setNumberOptions(QLocale::OmitGroupSeparator);
     if (documentLocale.decimalPoint() != QLocale().decimalPoint()) {
         // If loading an older MLT file without LC_NUMERIC, set locale to C which was previously the default
-        if (!mlt.hasAttribute("LC_NUMERIC")) setlocale(LC_NUMERIC, "C");
+        if (!mlt.hasAttribute("LC_NUMERIC")) {
+           setlocale(LC_NUMERIC, "C");
+       }
 
         QLocale::setDefault(documentLocale);
         // locale conversion might need to be redone
-        initEffects::parseEffectFiles();
+        initEffects::parseEffectFiles(setlocale(LC_NUMERIC, NULL));
     }
 
     bool ok;