summaryrefslogtreecommitdiff
path: root/src/modlist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modlist.cpp')
-rw-r--r--src/modlist.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/modlist.cpp b/src/modlist.cpp
index 43862008..0cf8766a 100644
--- a/src/modlist.cpp
+++ b/src/modlist.cpp
@@ -571,10 +571,15 @@ void ModList::changeModPriority(int sourceIndex, int newPriority)
emit modorder_changed();
}
-void ModList::modInfoAboutToChange(ModInfo::Ptr info)
+bool ModList::modInfoAboutToChange(ModInfo::Ptr info)
{
- m_ChangeInfo.name = info->name();
- m_ChangeInfo.state = state(info->name());
+ if (m_ChangeInfo.name.isEmpty()) {
+ m_ChangeInfo.name = info->name();
+ m_ChangeInfo.state = state(info->name());
+ return true;
+ } else {
+ return false;
+ }
}
void ModList::modInfoChanged(ModInfo::Ptr info)
@@ -590,6 +595,7 @@ void ModList::modInfoChanged(ModInfo::Ptr info)
} else {
qCritical("modInfoChanged not called after modInfoAboutToChange");
}
+ m_ChangeInfo.name = QString();
}
void ModList::disconnectSlots() {