summaryrefslogtreecommitdiffstats
path: root/third_party/leveldatabase
diff options
context:
space:
mode:
authorcmumford@chromium.org <cmumford@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-04 06:37:56 +0000
committercmumford@chromium.org <cmumford@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-12-04 06:37:56 +0000
commit3939cc57163e8b69b14b8e8769b572485229e66b (patch)
treefdce37baa9f1e0a14f872649495256b7dff34f31 /third_party/leveldatabase
parent8aa38ccc6747331e3a5f44a40bc5dd072762b4c2 (diff)
downloadchromium_src-3939cc57163e8b69b14b8e8769b572485229e66b.zip
chromium_src-3939cc57163e8b69b14b8e8769b572485229e66b.tar.gz
chromium_src-3939cc57163e8b69b14b8e8769b572485229e66b.tar.bz2
ChromiumEnv::GetChildren() now filtering out '.' and '..'
BUG=324936 Review URL: https://codereview.chromium.org/100243002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238608 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'third_party/leveldatabase')
-rw-r--r--third_party/leveldatabase/env_chromium.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/third_party/leveldatabase/env_chromium.cc b/third_party/leveldatabase/env_chromium.cc
index 00f8583..e0ab97d 100644
--- a/third_party/leveldatabase/env_chromium.cc
+++ b/third_party/leveldatabase/env_chromium.cc
@@ -4,6 +4,7 @@
#include <errno.h>
#include <stdio.h>
+#include <string.h>
#include <deque>
@@ -786,8 +787,11 @@ static base::PlatformFileError GetDirectoryEntries(
struct dirent dent_buf;
struct dirent* dent;
int readdir_result;
- while ((readdir_result = readdir_r(dir, &dent_buf, &dent)) == 0 && dent)
+ while ((readdir_result = readdir_r(dir, &dent_buf, &dent)) == 0 && dent) {
+ if (strcmp(dent->d_name, ".") == 0 || strcmp(dent->d_name, "..") == 0)
+ continue;
result->push_back(CreateFilePath(dent->d_name));
+ }
int saved_errno = errno;
closedir(dir);
if (readdir_result != 0)