diff --git a/src/yaml/parser_yaml.cpp b/src/yaml/parser_yaml.cpp index b4c830bd547b7b07e288cb406027deab95751db3..a813f71b2246d53d0056bb8ab26ec1f9db5ee000 100644 --- a/src/yaml/parser_yaml.cpp +++ b/src/yaml/parser_yaml.cpp @@ -517,12 +517,10 @@ void ParserYaml::parse() tags.push_back("ROS publisher"); walkTreeR(it.n_, tags, "ROS publisher/" + it.type_ + " - " + it.topic_); } - std::list<std::string> plugins; - std::list<std::string> packages_subscriber, packages_publisher; - for (const auto& it : paramsSens_) - plugins.push_back(it.plugin_); - for (const auto& it : paramsProc_) - plugins.push_back(it.plugin_); + std::list<std::string> plugins, packages_subscriber, packages_publisher; + for (auto pair : params_) + if (pair.first.find("plugin") != std::string::npos and pair.first != "plugins") + plugins.push_back(pair.second); for (const auto& it : subscriber_managers_) packages_subscriber.push_back(it.package_); for (const auto& it : publisher_managers_)