diff options
-rw-r--r-- | autotests/test_kconf_update.cpp | 9 | ||||
-rw-r--r-- | src/kconf_update/README.kconf_update | 5 | ||||
-rw-r--r-- | src/kconf_update/kconf_update.cpp | 6 |
3 files changed, 9 insertions, 11 deletions
diff --git a/autotests/test_kconf_update.cpp b/autotests/test_kconf_update.cpp index ff4939a3..e4e2b416 100644 --- a/autotests/test_kconf_update.cpp +++ b/autotests/test_kconf_update.cpp @@ -262,7 +262,7 @@ void TestKConfUpdate::test_data() << true << true ; - QTest::newRow("MigrateWhenFileDoesntHaveVersion") + QTest::newRow("DontMigrateWhenFileDoesntHaveVersion") << "File=testrc\n" "Group=group\n" @@ -276,15 +276,12 @@ void TestKConfUpdate::test_data() << "testrc" << - "[$Version]\n" - "update_info=%1\n" - "\n" "[group]\n" - "new=value\n" + "old=value\n" << "" << false - << true + << false ; QTest::newRow("DontMigrateWhenUpdateCantDoItMissingFilename") diff --git a/src/kconf_update/README.kconf_update b/src/kconf_update/README.kconf_update index cff2625e..72509286 100644 --- a/src/kconf_update/README.kconf_update +++ b/src/kconf_update/README.kconf_update @@ -51,9 +51,8 @@ Commas (,) are used to seperate fields and may not occur as part of any field and all of the keywords are case-sensitive, i.e. you cannot say "key" instead of "Key" for example. -Starting in KDE Frameworks 5, all update files should have a version field -at the top of the file. Thus all files should start with the line Version=5. -Files without a version are currently treated as version 5 but are deprecated. +Starting from KDE Frameworks 5 make sure to put Version=5 before the first "Id=" otherwise the upd file +will be skipped and the config file will not be updated. For the rest the file is parsed and executed sequentially from top to bottom. Each line can contain one entry. The following entries are recognized: diff --git a/src/kconf_update/kconf_update.cpp b/src/kconf_update/kconf_update.cpp index dc16409e..309bc3c2 100644 --- a/src/kconf_update/kconf_update.cpp +++ b/src/kconf_update/kconf_update.cpp @@ -252,7 +252,8 @@ bool KonfUpdate::checkFile(const QString &filename) } if (line.startsWith("Id=")) { if (!foundVersion) { - qDebug() << QStringLiteral("Missing \"Version=5\", file \'%1\' will be skipped in the future.").arg(filename); + qDebug() << QStringLiteral("Missing \"Version=5\", file \'%1\' will be skipped.").arg(filename); + return true; } id = m_currentFilename + ':' + line.mid(3); } else if (line.startsWith("File=")) { @@ -335,7 +336,8 @@ bool KonfUpdate::updateFile(const QString &filename) } if (m_line.startsWith(QLatin1String("Id="))) { if (!foundVersion) { - qDebug() << QStringLiteral("Missing \"Version=5\", file \'%1\' will be skipped in the future.").arg(filename); + qDebug() << QStringLiteral("Missing \"Version=5\", file \'%1\' will be skipped.").arg(filename); + break; } gotId(m_line.mid(3)); } else if (m_skip) { |