diff options
| author | Tannin <devnull@localhost> | 2013-07-17 20:58:58 +0200 |
|---|---|---|
| committer | Tannin <devnull@localhost> | 2013-07-17 20:58:58 +0200 |
| commit | d0f2c4fcf79222d5c6f3c17188a811b0a47833c6 (patch) | |
| tree | 12c9e4f529caa0f5830c8dd52d785b3e2df5462b /src/modinfo.cpp | |
| parent | 36ac91e0b765b1ae099e93054447beca8f461f74 (diff) | |
- now avoids a few unnecessary copy operations during generation of the directory structure
- bugfix: circular dependency caused a memory leak
- bugfix: removing a single mod lead to the wrong mod being deleted
Diffstat (limited to 'src/modinfo.cpp')
| -rw-r--r-- | src/modinfo.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/modinfo.cpp b/src/modinfo.cpp index 00b7c2af..1bb2daad 100644 --- a/src/modinfo.cpp +++ b/src/modinfo.cpp @@ -671,7 +671,7 @@ ModInfoRegular::EConflictType ModInfoRegular::isConflicted() const std::wstring name = ToWString(m_Name); if ((*m_DirectoryStructure)->originExists(name)) { FilesOrigin &origin = (*m_DirectoryStructure)->getOriginByName(name); - std::vector<FileEntry*> files = origin.getFiles(); + std::vector<FileEntry::Ptr> files = origin.getFiles(); for (auto iter = files.begin(); iter != files.end() && (!overwrite || !overwritten || !regular); ++iter) { const std::vector<int> &alternatives = (*iter)->getAlternatives(); if (alternatives.size() == 0) { @@ -716,7 +716,7 @@ bool ModInfoRegular::isRedundant() const std::wstring name = ToWString(m_Name); if ((*m_DirectoryStructure)->originExists(name)) { FilesOrigin &origin = (*m_DirectoryStructure)->getOriginByName(name); - std::vector<FileEntry*> files = origin.getFiles(); + std::vector<FileEntry::Ptr> files = origin.getFiles(); bool ignore = false; for (auto iter = files.begin(); iter != files.end(); ++iter) { if ((*iter)->getOrigin(ignore) == origin.getID()) { |
