From 500ab7f706bdc8d4eb94db22ab60f882b2670dde Mon Sep 17 00:00:00 2001 From: Tannin Date: Mon, 16 Sep 2013 22:32:42 +0200 Subject: - bugfix: testing for missing masters at the wrong time seems to have caused crashes - bugfix: mod list is now written to a temporary file first. Only on success is the original file overwritten - bugfix: moving a mod priority to just above the overwrite could cause a crash or error message - bugfix: versions with a release candidate number weren't sorted correctly (woops) - bugfix: staging script didn't include archive.dll and dlls.manifest - installation time on overwrite no longer updates constantly --- src/pluginlist.cpp | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'src/pluginlist.cpp') diff --git a/src/pluginlist.cpp b/src/pluginlist.cpp index f73805fd..ea23fcdd 100644 --- a/src/pluginlist.cpp +++ b/src/pluginlist.cpp @@ -594,6 +594,8 @@ int PluginList::columnCount(const QModelIndex &) const void PluginList::testMasters() { +// emit layoutAboutToBeChanged(); + std::set enabledMasters; for (auto iter = m_ESPs.begin(); iter != m_ESPs.end(); ++iter) { if (iter->m_Enabled) { @@ -613,7 +615,8 @@ void PluginList::testMasters() } } - emit layoutChanged(); +#pragma message("emitting this seems to cause a crash!") +// emit layoutChanged(); } @@ -738,18 +741,18 @@ void PluginList::setPluginPriority(int row, int &newPriority) if (!m_ESPs[row].m_IsMaster) { // don't allow esps to be moved above esms while ((newPriorityTemp < static_cast(m_ESPsByPriority.size() - 1)) && - m_ESPs[m_ESPsByPriority[newPriorityTemp]].m_IsMaster) { + m_ESPs.at(m_ESPsByPriority.at(newPriorityTemp)).m_IsMaster) { ++newPriorityTemp; } } else { // don't allow esms to be moved below esps while ((newPriorityTemp > 0) && - !m_ESPs[m_ESPsByPriority[newPriorityTemp]].m_IsMaster) { + !m_ESPs.at(m_ESPsByPriority.at(newPriorityTemp)).m_IsMaster) { --newPriorityTemp; } // also don't allow "regular" esms to be moved above primary plugins while ((newPriorityTemp < static_cast(m_ESPsByPriority.size() - 1)) && - (m_ESPs[m_ESPsByPriority[newPriorityTemp]].m_ForceEnabled)) { + (m_ESPs.at(m_ESPsByPriority.at(newPriorityTemp)).m_ForceEnabled)) { ++newPriorityTemp; } } @@ -806,9 +809,9 @@ void PluginList::changePluginPriority(std::vector rows, int newPriority) } refreshLoadOrder(); - startSaveTime(); - emit layoutChanged(); + + startSaveTime(); } -- cgit v1.3.1