| 1234567891011121314151617181920212223242526272829 | 
							- var path = require('path');
 
- module.exports = function (basedir, relfiles) {
 
-     if (relfiles) {
 
-         var files = relfiles.map(function (r) {
 
-             return path.resolve(basedir, r);
 
-         });
 
-     }
 
-     else {
 
-         var files = basedir;
 
-     }
 
-     
 
-     var res = files.slice(1).reduce(function (ps, file) {
 
-         if (!file.match(/^([A-Za-z]:)?\/|\\/)) {
 
-             throw new Error('relative path without a basedir');
 
-         }
 
-         
 
-         var xs = file.split(/\/+|\\+/);
 
-         for (
 
-             var i = 0;
 
-             ps[i] === xs[i] && i < Math.min(ps.length, xs.length);
 
-             i++
 
-         );
 
-         return ps.slice(0, i);
 
-     }, files[0].split(/\/+|\\+/));
 
-     
 
-     // Windows correctly handles paths with forward-slashes
 
-     return res.length > 1 ? res.join('/') : '/'
 
- };
 
 
  |