From 3d9438ecd63b64a304df8b800484bfc52eb16a90 Mon Sep 17 00:00:00 2001 From: Italo Nicola Date: Sun, 9 Jul 2023 19:45:47 -0300 Subject: [PATCH] clover: use fallback path when pipe->clear_texture is not available Signed-off-by: Italo Nicola Reviewed-by: Alyssa Rosenzweig Part-of: --- src/gallium/frontends/clover/core/resource.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/gallium/frontends/clover/core/resource.cpp b/src/gallium/frontends/clover/core/resource.cpp index 484e5798639..f3f429f1979 100644 --- a/src/gallium/frontends/clover/core/resource.cpp +++ b/src/gallium/frontends/clover/core/resource.cpp @@ -27,6 +27,7 @@ #include "util/format/u_format.h" #include "util/u_inlines.h" #include "util/u_resource.h" +#include "util/u_surface.h" using namespace clover; @@ -76,7 +77,11 @@ resource::clear(command_queue &q, const vector &origin, const vector ®ion, std::string texture_data; texture_data.reserve(util_format_get_blocksize(pipe->format)); util_format_pack_rgba(pipe->format, &texture_data[0], data.data(), 1); - q.pipe->clear_texture(q.pipe, pipe, 0, box(from, region), texture_data.data()); + if (q.pipe->clear_texture) { + q.pipe->clear_texture(q.pipe, pipe, 0, box(from, region), texture_data.data()); + } else { + u_default_clear_texture(q.pipe, pipe, 0, box(from, region), texture_data.data()); + } } }