summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r300/r300_state.c
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2010-04-11 10:15:12 +0200
committerMarek Olšák <maraeo@gmail.com>2010-04-11 19:29:30 +0200
commit69019afa67d66cf3e5d2b4d5b286bf2ac1bd87af (patch)
tree437d663675d9c2ef38488b95938e0eb007bb6cf9 /src/gallium/drivers/r300/r300_state.c
parentbd09fce27119548cb91cc2aa9ced6a7347aefc3a (diff)
r300g: use a dummy replacement fragment shader if the shader compilation fails
Better than killing an application.
Diffstat (limited to 'src/gallium/drivers/r300/r300_state.c')
-rw-r--r--src/gallium/drivers/r300/r300_state.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/gallium/drivers/r300/r300_state.c b/src/gallium/drivers/r300/r300_state.c
index 6e69155068..7a5db5ac61 100644
--- a/src/gallium/drivers/r300/r300_state.c
+++ b/src/gallium/drivers/r300/r300_state.c
@@ -679,9 +679,6 @@ static void* r300_create_fs_state(struct pipe_context* pipe,
fs->state = *shader;
fs->state.tokens = tgsi_dup_tokens(shader->tokens);
- tgsi_scan_shader(shader->tokens, &fs->info);
- r300_shader_read_fs_inputs(&fs->info, &fs->inputs);
-
return (void*)fs;
}
@@ -1103,7 +1100,7 @@ static void r300_set_viewport_state(struct pipe_context* pipe,
}
r300->viewport_state.dirty = TRUE;
- if (r300->fs && r300->fs->inputs.wpos != ATTR_UNUSED) {
+ if (r300->fs && r300->fs->shader->inputs.wpos != ATTR_UNUSED) {
r300->dirty_state |= R300_NEW_FRAGMENT_SHADER_CONSTANTS;
}
}