st/nine: Process pending commands on Reset

Some nine_state_* and nine_context_* functions
used for Reset() require all pending commands are
flushed.

Signed-off-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
Axel Davy
2016-12-28 18:49:10 +01:00
parent 6b87a2a77a
commit 4e922c81f6
3 changed files with 5 additions and 0 deletions
@@ -917,6 +917,7 @@ NineDevice9_Reset( struct NineDevice9 *This,
break;
}
nine_csmt_process(This);
nine_state_clear(&This->state, TRUE);
nine_context_clear(This);
@@ -257,6 +257,7 @@ NineDevice9Ex_Reset( struct NineDevice9Ex *This,
break;
}
nine_csmt_process(&This->base);
nine_state_clear(&This->base.state, TRUE);
nine_context_clear(&This->base);
@@ -2995,6 +2995,9 @@ static const DWORD nine_samp_state_defaults[NINED3DSAMP_LAST + 1] =
[NINED3DSAMP_CUBETEX] = 0
};
/* Note: The following 4 functions assume there is no
* pending commands */
void nine_state_restore_non_cso(struct NineDevice9 *device)
{
struct nine_context *context = &device->context;