diff --git a/intern/cycles/integrator/denoiser.h b/intern/cycles/integrator/denoiser.h index 035bdb99bec..04d161cea39 100644 --- a/intern/cycles/integrator/denoiser.h +++ b/intern/cycles/integrator/denoiser.h @@ -97,6 +97,11 @@ class Denoiser { return is_cancelled_cb(); } + void set_error(const string &error) + { + path_trace_device_->set_error(error); + } + protected: Denoiser(Device *path_trace_device, const DenoiseParams ¶ms); diff --git a/intern/cycles/integrator/denoiser_oidn.cpp b/intern/cycles/integrator/denoiser_oidn.cpp index 621b8f02812..e0a24856a7f 100644 --- a/intern/cycles/integrator/denoiser_oidn.cpp +++ b/intern/cycles/integrator/denoiser_oidn.cpp @@ -181,7 +181,7 @@ class OIDNDenoiseContext { const char *error_message; const oidn::Error error = oidn_device.getError(error_message); if (error != oidn::Error::None && error != oidn::Error::Cancelled) { - LOG(ERROR) << "OpenImageDenoise error: " << error_message; + denoiser_->set_error("OpenImageDenoise error: " + string(error_message)); } postprocess_output(oidn_color_pass, oidn_output_pass);