wined3d: Disallow upload conversion from compressed formats in surface_convert_format().

The underlying issue is that glCompressedTexSubImage2D() needs the upload
format to match the texture's internal format.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Henri Verbeet 2017-02-08 16:46:36 +01:00 committed by Alexandre Julliard
parent 807733f1c9
commit 5a6efe6329
1 changed files with 2 additions and 1 deletions

View File

@ -1521,7 +1521,8 @@ static struct wined3d_texture *surface_convert_format(struct wined3d_texture *sr
if (!(conv = find_converter(src_format->id, dst_format->id)) && (!device->d3d_initialized if (!(conv = find_converter(src_format->id, dst_format->id)) && (!device->d3d_initialized
|| !is_identity_fixup(src_format->color_fixup) || src_format->convert || !is_identity_fixup(src_format->color_fixup) || src_format->convert
|| !is_identity_fixup(dst_format->color_fixup) || dst_format->convert)) || !is_identity_fixup(dst_format->color_fixup) || dst_format->convert
|| (src_format->flags[WINED3D_GL_RES_TYPE_TEX_2D] & WINED3DFMT_FLAG_COMPRESSED)))
{ {
FIXME("Cannot find a conversion function from format %s to %s.\n", FIXME("Cannot find a conversion function from format %s to %s.\n",
debug_d3dformat(src_format->id), debug_d3dformat(dst_format->id)); debug_d3dformat(src_format->id), debug_d3dformat(dst_format->id));