diff options
Diffstat (limited to 'lib/mesa/src/gallium/drivers/swr')
-rw-r--r-- | lib/mesa/src/gallium/drivers/swr/swr_screen.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/mesa/src/gallium/drivers/swr/swr_screen.cpp b/lib/mesa/src/gallium/drivers/swr/swr_screen.cpp index de9008ddf..c29a90bad 100644 --- a/lib/mesa/src/gallium/drivers/swr/swr_screen.cpp +++ b/lib/mesa/src/gallium/drivers/swr/swr_screen.cpp @@ -844,7 +844,9 @@ swr_texture_layout(struct swr_screen *screen, size_t total_size = (uint64_t)res->swr.depth * res->swr.qpitch * res->swr.pitch * res->swr.numSamples; - if (total_size > SWR_MAX_TEXTURE_SIZE) + + // Let non-sampled textures (e.g. buffer objects) bypass the size limit + if (swr_resource_is_texture(&res->base) && total_size > SWR_MAX_TEXTURE_SIZE) return false; if (allocate) { |