summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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)