summaryrefslogtreecommitdiffstats
path: root/lib/utils/path.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/utils/path.js')
-rw-r--r--lib/utils/path.js23
1 files changed, 12 insertions, 11 deletions
diff --git a/lib/utils/path.js b/lib/utils/path.js
index d5b98f7..5285896 100644
--- a/lib/utils/path.js
+++ b/lib/utils/path.js
@@ -1,5 +1,5 @@
var _ = require("lodash");
-var path = require('path');
+var path = require("path");
// Return true if file path is inside a folder
function isInRoot(root, filename) {
@@ -10,28 +10,29 @@ function isInRoot(root, filename) {
// Resolve paths in a specific folder
// Throw error if file is outside this folder
function resolveInRoot(root) {
- var input = _.chain(arguments)
+ var input, result, err;
+
+ input = _.chain(arguments)
.toArray()
.slice(1)
- .reduce(function(current, p, i) {
- // Handle path relative to book root ('/README.md')
- if (p[0] == '/' || p[0] == '\\') return p.slice(1);
+ .reduce(function(current, p) {
+ // Handle path relative to book root ("/README.md")
+ if (p[0] == "/" || p[0] == "\\") return p.slice(1);
return current? path.join(current, p) : path.normalize(p);
- }, '')
+ }, "")
.value();
- var result = path.resolve(root, input);
+ result = path.resolve(root, input);
if (!isInRoot(root, result)) {
- err = new Error("EACCESS: '" + result + "' not in '" + root + "'");
+ err = new Error("EACCESS: \"" + result + "\" not in \"" + root + "\"");
err.code = "EACCESS";
throw err;
}
- return result
-};
-
+ return result;
+}
module.exports = {
isInRoot: isInRoot,