'readdir_r' is deprecated since version 2.24 glibc.
By upgrading TOOLCHAIN for platform, it should be replaced by 'readdir'
Change-Id: I711318a6b12a237bc8c9ee9edc981c67e86dd331
Signed-off-by: Inkyun Kil <inkyun.kil@samsung.com>
static GList *__list_directory(const char *dir_name, const char *tpk_path, GList *list)
{
DIR *dir = NULL;
- struct dirent file_info;
- struct dirent *result;
+ struct dirent *file_info = NULL;
int flag = 0;
char path[PATH_MAX] = {0, };
char rel_path_old_tpk_file[PATH_MAX] = {0, };
char *file_path = NULL;
char buf[BUF_SIZE] = {0};
const char *d_name = NULL;
- int ret = 0;
int path_length;
dir = opendir(dir_name);
exit(EXIT_FAILURE);
}
- while (1) {
- ret = readdir_r(dir, &file_info, &result);
- if (ret != 0 || result == NULL) {
- flag++;
- break;
- }
-
- d_name = file_info.d_name;
- if (!(file_info.d_type & DT_DIR)) {
+ while ((file_info = readdir(dir)) != NULL) {
+ d_name = file_info->d_name;
+ if (!(file_info->d_type & DT_DIR)) {
snprintf(rel_path_old_tpk_file, PATH_MAX, "%s/%s", dir_name, d_name);
strncpy(path, rel_path_old_tpk_file + strlen(tpk_path),
strlen(rel_path_old_tpk_file));
memset(rel_path_old_tpk_file, 0, PATH_MAX);
}
- if (file_info.d_type & DT_DIR) {
+ if (file_info->d_type & DT_DIR) {
if (strcmp(d_name, "..") != 0 && strcmp(d_name, ".") != 0) {
path_length = snprintf(path, PATH_MAX, "%s/%s", dir_name, d_name);
if (path_length >= PATH_MAX) {
bool readonly)
{
DIR *dir;
- struct dirent file_info, *result;
+ struct dirent *file_info = NULL;
int ret;
char file_path[BUFSZE];
char err_buf[BUFSZE];
_D("Loading pkg files from %s", directory);
- for (ret = readdir_r(dir, &file_info, &result);
- ret == 0 && result != NULL;
- ret = readdir_r(dir, &file_info, &result)) {
- if (file_info.d_name[0] == '.')
+ while ((file_info = readdir(dir)) != NULL) {
+ if (file_info->d_name[0] == '.')
continue;
snprintf(file_path, sizeof(file_path), "%s/%s", directory,
- file_info.d_name);
+ file_info->d_name);
_D("pkg file %s", file_path);
pid_t pid = fork();
int ret = 0;
DIR *dp = NULL;
char buf[1024] = {0, };
- struct dirent ep, *result;
+ struct dirent *ep = NULL;
char *abs_filename = NULL;
struct stat stFileInfo;
goto err;
}
- for (ret = readdir_r(dp, &ep, &result);
- ret == 0 && result != NULL;
- ret = readdir_r(dp, &ep, &result)) {
+ while ((ep = readdir(dp)) != NULL) {
snprintf(abs_filename, PATH_MAX - 1, "%s/%s", dirname,
- ep.d_name);
+ ep->d_name);
if (lstat(abs_filename, &stFileInfo) < 0)
perror(abs_filename);
if (S_ISDIR(stFileInfo.st_mode)) {
- if (strcmp(ep.d_name, ".") &&
- strcmp(ep.d_name, "..")) {
+ if (strcmp(ep->d_name, ".") &&
+ strcmp(ep->d_name, "..")) {
ret = __clear_dir(abs_filename);
if (ret != 0)
LOGE("Couldn't remove the directory. "
int subfd;
int ret;
DIR *dir;
- struct dirent dent, *result;
+ struct dirent *dent = NULL;
const char *file_info;
char buf[1024] = {0, };
return -1;
}
- for (ret = readdir_r(dir, &dent, &result);
- ret == 0 && result != NULL;
- ret = readdir_r(dir, &dent, &result)) {
- file_info = dent.d_name;
+ while ((dent = readdir(dir)) != NULL) {
+ file_info = dent->d_name;
if (file_info[0] == '.') {
if (file_info[1] == '\0')
continue;
continue;
}
- if (dent.d_type == DT_DIR) {
+ if (dent->d_type == DT_DIR) {
subfd = openat(dfd, file_info, O_RDONLY | O_DIRECTORY);
if (subfd < 0) {
LOGE("openat() failed, file_info:%s, errno: %d(%s)",
int subfd = -1;
struct stat st;
int ret;
- struct dirent ent, *result;
+ struct dirent *dent = NULL;
long long size = 0;
if (type == STORAGE_TYPE_INTERNAL_GLOBAL_PATH) {
goto error;
}
*app_size += __stat_size(&st);
- for (ret = readdir_r(dir, &ent, &result);
- ret == 0 && result != NULL;
- ret = readdir_r(dir, &ent, &result)) {
- const char *name = ent.d_name;
+ while ((dent = readdir(dir)) != NULL) {
+ const char *name = dent->d_name;
if (name[0] == '.') {
- if (name[1] == '\0')
- continue;
+ if (name[1] == '\0') continue;
if ((name[1] == '.') && (name[2] == '\0'))
continue;
}
- if (ent.d_type != DT_DIR)
+ if (dent->d_type != DT_DIR)
continue;
subfd = openat(dfd, name, O_RDONLY | O_DIRECTORY);