summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r300
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2010-05-02 17:19:03 +0200
committerMarek Olšák <[email protected]>2010-05-02 20:59:47 +0200
commit3b2cf97c5c84c3a92f97f335b27f754aa42c5259 (patch)
treebaa87a677f8598eefb01080e90d866cc7abc97c5 /src/gallium/drivers/r300
parent2df3c361efc1d7ac4ec93a5457096b3bd2ce1935 (diff)
r300g: fix surface_copy for compressed formats
No accelerated blitting for these, it's too messy.
Diffstat (limited to 'src/gallium/drivers/r300')
-rw-r--r--src/gallium/drivers/r300/r300_blit.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/r300_blit.c b/src/gallium/drivers/r300/r300_blit.c
index 928ad300eee..819d5e3f0c8 100644
--- a/src/gallium/drivers/r300/r300_blit.c
+++ b/src/gallium/drivers/r300/r300_blit.c
@@ -137,7 +137,8 @@ void r300_surface_copy(struct pipe_context* pipe,
if (!pipe->screen->is_format_supported(pipe->screen,
old_format, src->texture->target,
PIPE_BIND_RENDER_TARGET |
- PIPE_BIND_SAMPLER_VIEW, 0)) {
+ PIPE_BIND_SAMPLER_VIEW, 0) &&
+ util_format_description(old_format)->layout == UTIL_FORMAT_LAYOUT_PLAIN) {
switch (util_format_get_blocksize(old_format)) {
case 1:
new_format = PIPE_FORMAT_I8_UNORM;