From 99c2326e51696e090688ebcf0af7345feda661e3 Mon Sep 17 00:00:00 2001 From: Andrey Morozov Date: Tue, 4 Oct 2011 21:43:37 +0000 Subject: [PATCH] minor fix --- modules/contrib/src/inputoutput.cpp | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/modules/contrib/src/inputoutput.cpp b/modules/contrib/src/inputoutput.cpp index 75c975bdb7..2337c631b7 100644 --- a/modules/contrib/src/inputoutput.cpp +++ b/modules/contrib/src/inputoutput.cpp @@ -46,7 +46,7 @@ namespace cv #else DIR *dp; struct dirent *dirp; - if((dp = opendir(path.c_str())) == NULL) + if((dp = opendir(path_f.c_str())) == NULL) { return list; } @@ -54,7 +54,7 @@ namespace cv while ((dirp = readdir(dp)) != NULL) { if (dirp->d_type == DT_REG) - list.push_back(static_cast(dirp->d_name)); + list.push_back(static_cast(dirp->d_name)); } closedir(dp); #endif @@ -97,15 +97,19 @@ namespace cv #else DIR *dp; struct dirent *dirp; - if((dp = opendir(path.c_str())) == NULL) - { + if((dp = opendir(path_f.c_str())) == NULL) + { return list; } while ((dirp = readdir(dp)) != NULL) { - if (dirp->d_type == DT_DIR) - list.push_back(static_cast(dirp->d_name)); + if (dirp->d_type == DT_DIR && + strcmp(dirp->d_name, ".") != 0 && + strcmp(dirp->d_name, "..") != 0 ) + { + list.push_back(static_cast(dirp->d_name)); + } } closedir(dp); #endif