From 3ea09efbf51a62acb87ce1de3cced24e968f755f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Fri, 24 Jun 2022 22:30:46 +0200 Subject: [PATCH] imageconverter: don't recreate the plugin manager every loop iteration. Sigh, looks like 5a8d31bf689f7f4dacf7aa7c10f38ea41c12b92f got commited halfway through. --- src/Magnum/Trade/imageconverter.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/Magnum/Trade/imageconverter.cpp b/src/Magnum/Trade/imageconverter.cpp index d21064171..aa9445cec 100644 --- a/src/Magnum/Trade/imageconverter.cpp +++ b/src/Magnum/Trade/imageconverter.cpp @@ -947,6 +947,10 @@ no -C / --converter is specified, AnyImageConverter is used.)") outputImages2D.size() > 1 || outputImages3D.size() > 1; + PluginManager::Manager converterManager{ + args.value("plugin-dir").empty() ? Containers::String{} : + Utility::Path::join(args.value("plugin-dir"), Trade::AbstractImageConverter::pluginSearchPaths().back())}; + /* Assume there's always one passed --converter option less, and the last is implicitly AnyImageConverter. All converters except the last one are expected to support ConvertMesh and the mesh is "piped" from one to the @@ -962,9 +966,6 @@ no -C / --converter is specified, AnyImageConverter is used.)") (outputDimensions == 3 && outputImages3D.front().isCompressed()); /* Load converter plugin */ - PluginManager::Manager converterManager{ - args.value("plugin-dir").empty() ? Containers::String{} : - Utility::Path::join(args.value("plugin-dir"), Trade::AbstractImageConverter::pluginSearchPaths().back())}; Containers::Pointer converter = converterManager.loadAndInstantiate(converterName); if(!converter) { Debug{} << "Available converter plugins:" << ", "_s.join(converterManager.aliasList());