dir = opendir(traverse_path);
while ((ent = readdir(dir)) != NULL) {
- snprintf(abs_dirname, PATH_MAX, "%s/%s", traverse_path,
+ ret = snprintf(abs_dirname, PATH_MAX, "%s/%s", traverse_path,
ent->d_name);
+ if (ret < 0 || ret > PATH_MAX) {
+ LOGE("snprintf fail");
+ closedir(dir);
+ return;
+ }
ret = stat(abs_dirname, &stats);
if (ret != 0) {