fix: deepin-home checkauto start failed

初次启动时对比filepath 还需要看看 X-Deepin-GenerateSource

Issue: https://github.com/linuxdeepin/developer-center/issues/9638
This commit is contained in:
ck 2024-07-10 16:48:50 +08:00 committed by Comix
parent 50a0ad53ec
commit 88b0159cc3

View File

@ -628,6 +628,13 @@ bool ApplicationService::autostartCheck(const QString &filePath) const noexcept
} }
} }
QString source = s.value(DesktopFileEntryKey, X_Deepin_GenerateSource).value_or(DesktopEntry::Value{}).toString();
// file has been removed
if (source != m_autostartSource.m_filePath &&
filePath != m_autostartSource.m_filePath) {
return false;
}
auto hiddenVal = s.value(DesktopFileEntryKey, DesktopEntryHidden); auto hiddenVal = s.value(DesktopFileEntryKey, DesktopEntryHidden);
if (!hiddenVal) { if (!hiddenVal) {
qDebug() << "no hidden in autostart desktop"; qDebug() << "no hidden in autostart desktop";
@ -665,10 +672,6 @@ bool ApplicationService::isAutoStart() const noexcept
{"*.desktop"}, {"*.desktop"},
QDir::Name | QDir::DirsLast); QDir::Name | QDir::DirsLast);
// file has been removed
if (destDesktopFile != m_autostartSource.m_filePath) {
return false;
}
return autostartCheck(destDesktopFile); return autostartCheck(destDesktopFile);
} }