nixpkgs/pkgs/applications/display-managers/sddm/sddm-ignore-config-mtime.patch

46 lines
2.0 KiB
Diff
Raw Normal View History

diff --git a/src/common/ConfigReader.cpp b/src/common/ConfigReader.cpp
index 041e5ed..efb1324 100644
--- a/src/common/ConfigReader.cpp
+++ b/src/common/ConfigReader.cpp
@@ -148,17 +148,14 @@ namespace SDDM {
2017-10-12 05:01:42 +01:00
// * m_path (classic fallback /etc/sddm.conf)
2017-10-12 05:01:42 +01:00
QStringList files;
- QDateTime latestModificationTime = QFileInfo(m_path).lastModified();
if (!m_sysConfigDir.isEmpty()) {
//include the configDir in modification time so we also reload on any files added/removed
QDir dir(m_sysConfigDir);
if (dir.exists()) {
- latestModificationTime = std::max(latestModificationTime, QFileInfo(m_sysConfigDir).lastModified());
const auto dirFiles = dir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot, QDir::LocaleAware);
for (const QFileInfo &file : dirFiles) {
2017-10-12 05:01:42 +01:00
files << (file.absoluteFilePath());
- latestModificationTime = std::max(latestModificationTime, file.lastModified());
}
}
}
@@ -166,22 +163,15 @@ namespace SDDM {
2017-10-12 05:01:42 +01:00
//include the configDir in modification time so we also reload on any files added/removed
QDir dir(m_configDir);
if (dir.exists()) {
- latestModificationTime = std::max(latestModificationTime, QFileInfo(m_configDir).lastModified());
const auto dirFiles = dir.entryInfoList(QDir::Files | QDir::NoDotAndDotDot, QDir::LocaleAware);
for (const QFileInfo &file : dirFiles) {
2017-10-12 05:01:42 +01:00
files << (file.absoluteFilePath());
- latestModificationTime = std::max(latestModificationTime, file.lastModified());
}
}
}
files << m_path;
- if (latestModificationTime <= m_fileModificationTime) {
- return;
- }
2017-10-12 05:01:42 +01:00
- m_fileModificationTime = latestModificationTime;
-
for (const QString &filepath : qAsConst(files)) {
2017-10-12 05:01:42 +01:00
loadInternal(filepath);
}