diff --git a/src/tools/imgtool/imgtool.cpp b/src/tools/imgtool/imgtool.cpp index 64a84a74e0c..71aecb39f6e 100644 --- a/src/tools/imgtool/imgtool.cpp +++ b/src/tools/imgtool/imgtool.cpp @@ -393,7 +393,7 @@ imgtool_image *imgtool_partition_image(imgtool_partition *partition) imgtoolerr_t imgtool_identify_file(const char *fname, imgtool_module **modules, size_t count) { imgtoolerr_t err = IMGTOOLERR_SUCCESS; - imgtool::library *library = global_imgtool_library.get(); + imgtool::library &library = *global_imgtool_library.get(); imgtool_module *insert_module; imgtool_module *temp_module; size_t i = 0; @@ -426,7 +426,7 @@ imgtoolerr_t imgtool_identify_file(const char *fname, imgtool_module **modules, extension++; /* iterate through all modules */ - for (const auto &module : library->modules()) + for (const auto &module : library.modules()) { if (!extension || image_find_extension(module->extensions, extension)) { diff --git a/src/tools/imgtool/library.cpp b/src/tools/imgtool/library.cpp index eb6013d5f04..5e2c058ff8b 100644 --- a/src/tools/imgtool/library.cpp +++ b/src/tools/imgtool/library.cpp @@ -50,7 +50,7 @@ void library::add_class(const imgtool_class *imgclass) char *s1, *s2; // allocate the module and place it in the chain - m_modules.emplace_back(std::unique_ptr(new imgtool_module)); + m_modules.emplace_back(std::make_unique()); imgtool_module *module = m_modules.back().get(); memset(module, 0, sizeof(*module)); @@ -134,7 +134,7 @@ void library::add(imgtool_get_info get_info) void library::unlink(const char *module_name) { - modulelist::iterator iter = find(module_name); + const modulelist::iterator iter = find(module_name); if (iter != m_modules.end()) m_modules.erase(iter); } @@ -166,7 +166,7 @@ int library::module_compare(const imgtool_module *m1, const imgtool_module *m2, void library::sort(sort_type sort) { - auto compare = [&](const std::unique_ptr &a, const std::unique_ptr &b) + auto compare = [this, sort](const std::unique_ptr &a, const std::unique_ptr &b) { return module_compare(a.get(), b.get(), sort) < 0; }; @@ -183,7 +183,7 @@ library::modulelist::iterator library::find(const char *module_name) return std::find_if( m_modules.begin(), m_modules.end(), - [&](std::unique_ptr &module) { return !strcmp(module->name, module_name); }); + [this, module_name](std::unique_ptr &module) { return !strcmp(module->name, module_name); }); } diff --git a/src/tools/imgtool/modules.cpp b/src/tools/imgtool/modules.cpp index 80a0e0d2742..5d3acc7e31d 100644 --- a/src/tools/imgtool/modules.cpp +++ b/src/tools/imgtool/modules.cpp @@ -43,7 +43,7 @@ imgtoolerr_t imgtool_create_cannonical_library(bool omit_untested, std::unique_p // create all modules for (i = 0; i < ARRAY_LENGTH(modules); i++) - library->add( modules[i]); + library->add(modules[i]); // remove irrelevant modules for (i = 0; i < ARRAY_LENGTH(irrelevant_modules); i++)