diff --git a/onnxruntime/core/providers/vitisai/vitisai_provider_factory.cc b/onnxruntime/core/providers/vitisai/vitisai_provider_factory.cc index 1ef63588a1685..cf4060e103c6d 100644 --- a/onnxruntime/core/providers/vitisai/vitisai_provider_factory.cc +++ b/onnxruntime/core/providers/vitisai/vitisai_provider_factory.cc @@ -101,8 +101,8 @@ struct VitisAI_Provider : Provider { } g_provider; struct VitisAIEpFactory : OrtEpFactory { - VitisAIEpFactory(const OrtApi& ort_api_in) - : ort_api{ort_api_in} { + VitisAIEpFactory(const OrtApi& ort_api_in, const OrtLogger& default_logger_in) + : ort_api{ort_api_in}, default_logger{default_logger_in} { ort_version_supported = ORT_API_VERSION; GetName = GetNameImpl; GetVendor = GetVendorImpl; @@ -176,6 +176,7 @@ struct VitisAIEpFactory : OrtEpFactory { } const OrtApi& ort_api; + const OrtLogger& default_logger; static constexpr const char* const ep_name{kVitisAIExecutionProvider}; static constexpr std::uint32_t hardware_vendor_id{0x1022}; static constexpr const char* const vendor{"AMD"}; @@ -190,13 +191,14 @@ ORT_API(onnxruntime::Provider*, GetProvider) { } OrtStatus* CreateEpFactories(const char* /*registration_name*/, const OrtApiBase* ort_api_base, + const OrtLogger* default_logger, OrtEpFactory** factories, size_t max_factories, size_t* num_factories) { const OrtApi* ort_api = ort_api_base->GetApi(ORT_API_VERSION); if (max_factories < 1) { return ort_api->CreateStatus(ORT_INVALID_ARGUMENT, "Not enough space to return EP factory. Need at least one."); } - factories[0] = std::make_unique(*ort_api).release(); + factories[0] = std::make_unique(*ort_api, *default_logger).release(); *num_factories = 1; return nullptr; }