You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							28 lines
						
					
					
						
							858 B
						
					
					
				
			
		
		
	
	
							28 lines
						
					
					
						
							858 B
						
					
					
				"use strict"; | 
						|
 | 
						|
var path = require("path"); | 
						|
 | 
						|
module.exports = function (thePath, potentialParent) { | 
						|
    // For inside-directory checking, we want to allow trailing slashes, so normalize. | 
						|
    thePath = stripTrailingSep(thePath); | 
						|
    potentialParent = stripTrailingSep(potentialParent); | 
						|
 | 
						|
    // Node treats only Windows as case-insensitive in its path module; we follow those conventions. | 
						|
    if (process.platform === "win32") { | 
						|
        thePath = thePath.toLowerCase(); | 
						|
        potentialParent = potentialParent.toLowerCase(); | 
						|
    } | 
						|
 | 
						|
    return thePath.lastIndexOf(potentialParent, 0) === 0 && | 
						|
		( | 
						|
			thePath[potentialParent.length] === path.sep || | 
						|
			thePath[potentialParent.length] === undefined | 
						|
		); | 
						|
}; | 
						|
 | 
						|
function stripTrailingSep(thePath) { | 
						|
    if (thePath[thePath.length - 1] === path.sep) { | 
						|
        return thePath.slice(0, -1); | 
						|
    } | 
						|
    return thePath; | 
						|
}
 | 
						|
 |