Browse Source

Fix segfault for empty spare modules

main
Matthias Volk 5 years ago
parent
commit
a7096f748b
No known key found for this signature in database GPG Key ID: 83A57678F739FCD3
  1. 3
      src/storm-dft/storage/dft/DFT.cpp

3
src/storm-dft/storage/dft/DFT.cpp

@ -754,6 +754,8 @@ namespace storm {
// Check independence of spare modules // Check independence of spare modules
// TODO: comparing one element of each spare module sufficient? // TODO: comparing one element of each spare module sufficient?
for (auto module1 = mSpareModules.begin(); module1 != mSpareModules.end(); ++module1) { for (auto module1 = mSpareModules.begin(); module1 != mSpareModules.end(); ++module1) {
if (!module1->second.empty()) {
// Empty modules are allowed for the primary module of a spare gate
size_t firstElement = module1->second.front(); size_t firstElement = module1->second.front();
for (auto module2 = std::next(module1); module2 != mSpareModules.end(); ++module2) { for (auto module2 = std::next(module1); module2 != mSpareModules.end(); ++module2) {
if (std::find(module2->second.begin(), module2->second.end(), firstElement) != module2->second.end()) { if (std::find(module2->second.begin(), module2->second.end(), firstElement) != module2->second.end()) {
@ -765,6 +767,7 @@ namespace storm {
} }
} }
} }
}
if (validForAnalysis) { if (validForAnalysis) {
// Check that each dependency is binary // Check that each dependency is binary

Loading…
Cancel
Save