d3dcompiler: Add D3D_BLOB_XNA_SHADER to D3DGetBlobPart().

This commit is contained in:
Rico Schüller 2010-10-12 19:25:02 +02:00 committed by Alexandre Julliard
parent cdfdfe59ee
commit a36f51b1b2
2 changed files with 8 additions and 1 deletions

View File

@ -157,6 +157,10 @@ static BOOL check_blob_part(DWORD tag, D3D_BLOB_PART part)
if (tag == TAG_XNAP) add = TRUE;
break;
case D3D_BLOB_XNA_SHADER:
if (tag == TAG_XNAS) add = TRUE;
break;
default:
FIXME("Unhandled D3D_BLOB_PART %s.\n", debug_d3dcompiler_d3d_blob_part(part));
break;
@ -228,6 +232,7 @@ HRESULT d3dcompiler_get_blob_part(const void *data, SIZE_T data_size, D3D_BLOB_P
case D3D_BLOB_DEBUG_INFO:
case D3D_BLOB_LEGACY_SHADER:
case D3D_BLOB_XNA_PREPASS_SHADER:
case D3D_BLOB_XNA_SHADER:
if (count != 1) count = 0;
break;
@ -253,7 +258,8 @@ HRESULT d3dcompiler_get_blob_part(const void *data, SIZE_T data_size, D3D_BLOB_P
}
/* some parts aren't full DXBCs, they contain only the data */
if (count == 1 && (part == D3D_BLOB_DEBUG_INFO || part == D3D_BLOB_LEGACY_SHADER || part == D3D_BLOB_XNA_PREPASS_SHADER))
if (count == 1 && (part == D3D_BLOB_DEBUG_INFO || part == D3D_BLOB_LEGACY_SHADER || part == D3D_BLOB_XNA_PREPASS_SHADER
|| part == D3D_BLOB_XNA_SHADER))
{
hr = D3DCreateBlob(dst_dxbc.sections[0].data_size, blob);
if (SUCCEEDED(hr))

View File

@ -587,6 +587,7 @@ void SlDeleteShader(struct bwriter_shader *shader);
#define TAG_PCSG MAKE_TAG('P', 'C', 'S', 'G')
#define TAG_SDBG MAKE_TAG('S', 'D', 'B', 'G')
#define TAG_XNAP MAKE_TAG('X', 'N', 'A', 'P')
#define TAG_XNAS MAKE_TAG('X', 'N', 'A', 'S')
struct dxbc_section
{