diff options
author | Matt Turner <[email protected]> | 2015-03-03 16:09:58 -0800 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2015-03-07 17:22:22 +0000 |
commit | 57f54b067b5c6d4fbf3ceb2bc1138aed8c913c8a (patch) | |
tree | 1e3423677249b2861200e6a00d3c1a26437c3c9e /src/gallium | |
parent | e0670715bc511bb814ab42b10d9608a93d6ba439 (diff) |
r300g: Check return value of snprintf().
Would have at least prevented the crash the previous patch fixed.
Cc: 10.4, 10.5 <[email protected]>
Bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=540970
Reviewed-by: Tom Stellard <[email protected]>
(cherry picked from commit ade0b580e75bdea227eec5345f6681b678d0811b)
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c b/src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c index 422bdb04405..04c01f1b443 100644 --- a/src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c +++ b/src/gallium/drivers/r300/compiler/tests/rc_test_helpers.c @@ -541,9 +541,14 @@ unsigned load_program( unsigned *count; char **string_store; unsigned i = 0; + int n; memset(line, 0, sizeof(line)); - snprintf(path, PATH_MAX, TEST_PATH "/%s", filename); + n = snprintf(path, PATH_MAX, TEST_PATH "/%s", filename); + if (n < 0 || n >= PATH_MAX) { + return 0; + } + file = fopen(path, "r"); if (!file) { return 0; |