Module: Mesa Branch: master Commit: aef7eb4cacbb241dc895f3e08dba4c91052a98a8 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=aef7eb4cacbb241dc895f3e08dba4c91052a98a8
Author: Nicolai Hähnle <nicolai.haeh...@amd.com> Date: Thu Nov 3 10:23:17 2016 +0100 glsl/cache: correct asprintf error handling From the manpage of asprintf: "If memory allocation wasn't possible, or some other error occurs, these functions will return -1, and the contents of strp are undefined." Reviewed-by: Iago Toral Quiroga <ito...@igalia.com> Reviewed-by: Edward O'Callaghan <funfunc...@folklore1984.net> --- src/compiler/glsl/cache.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/compiler/glsl/cache.c b/src/compiler/glsl/cache.c index 64a34f0..e74c27d 100644 --- a/src/compiler/glsl/cache.c +++ b/src/compiler/glsl/cache.c @@ -416,7 +416,8 @@ choose_random_file_matching(const char *dir_path, return NULL; } - asprintf(&filename, "%s/%s", dir_path, entry->d_name); + if (asprintf(&filename, "%s/%s", dir_path, entry->d_name) < 0) + filename = NULL; closedir(dir); @@ -497,8 +498,7 @@ evict_random_item(struct program_cache *cache) a = rand() % 16; b = rand() % 16; - asprintf (&dir_path, "%s/%c%c", cache->path, hex[a], hex[b]); - if (dir_path == NULL) + if (asprintf(&dir_path, "%s/%c%c", cache->path, hex[a], hex[b]) < 0) return; size = unlink_random_file_from_directory(dir_path); _______________________________________________ mesa-commit mailing list mesa-commit@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-commit