diff --git a/include/simdb/apps/AppManager.hpp b/include/simdb/apps/AppManager.hpp index 983133e3..784626e3 100644 --- a/include/simdb/apps/AppManager.hpp +++ b/include/simdb/apps/AppManager.hpp @@ -446,13 +446,18 @@ class AppManager } } } - for (const auto& [base, vec] : by_base) + + // Now append any apps that were not given explicit hook ordering + for (auto& [_, app] : apps_) { - for (App* app : vec) + if (std::find(out.begin(), out.end(), app.get()) == out.end()) { - out.push_back(app); + out.push_back(app.get()); } } + + assert(std::set(out.begin(), out.end()) == std::set(getApps_().begin(), getApps_().end())); + return out; }