projects
/
mesa.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
121f221
)
Fix valgrind problem caused by reading text[-1].
author
Brian
<brian@yutani.localnet.net>
Thu, 19 Apr 2007 20:15:11 +0000
(14:15 -0600)
committer
Brian
<brian@yutani.localnet.net>
Thu, 19 Apr 2007 20:15:11 +0000
(14:15 -0600)
src/mesa/shader/grammar/grammar.c
patch
|
blob
|
history
diff --git
a/src/mesa/shader/grammar/grammar.c
b/src/mesa/shader/grammar/grammar.c
index 989e9544911688a8f2aa7a9d73772460bb54cfff..a9775961d3a6577654cc072c8f3e423847e578e6 100644
(file)
--- a/
src/mesa/shader/grammar/grammar.c
+++ b/
src/mesa/shader/grammar/grammar.c
@@
-2693,14
+2693,16
@@
fast_match (dict *di, const byte *text, int *index, rule *ru, int *_PP, bytepool
if (status == mr_matched)
{
- if (sp->m_emits != NULL)
- if (emit_push (sp->m_emits, _BP->_F + _P, text[ind - 1], save_ind, &ctx))
+ if (sp->m_emits != NULL) {
+ const byte ch = (ind <= 0) ? 0 : text[ind - 1];
+ if (emit_push (sp->m_emits, _BP->_F + _P, ch, save_ind, &ctx))
{
free_regbyte_ctx_stack (ctx, *rbc);
return mr_internal_error;
}
- _P = _P2;
+ }
+ _P = _P2;
}
/* if the rule operator is a logical or, we pick up the first matching specifier */