diff --git a/lib/wrench.js b/lib/wrench.js index 53a9a97..989535e 100644 --- a/lib/wrench.js +++ b/lib/wrench.js @@ -32,7 +32,14 @@ var fs = require("fs"), exports.readdirSyncRecursive = function(baseDir, filter) { baseDir = baseDir.replace(/\/$/, ''); + var checkedInodes = {}; var readdirSyncRecursive = function(baseDir) { + var inode = fs.statSync(baseDir).ino; + if (inode in checkedInodes) { + return []; + } + checkedInodes[inode] = true; + var files = [], curFiles, nextDirs,