diff options
Diffstat (limited to 'lib/utils/links.js')
-rw-r--r-- | lib/utils/links.js | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/lib/utils/links.js b/lib/utils/links.js index 9fe6127..9a95824 100644 --- a/lib/utils/links.js +++ b/lib/utils/links.js @@ -26,15 +26,17 @@ var isRelative = function(href) { // outdir: directory parent from the html output var toAbsolute = function(_href, dir, outdir) { - // Absolute file in source - _href = path.join(dir, _href); + if (isExternal(_href)) return _href; - // make it relative to output - _href = path.relative(outdir, _href); + // Path '_href' inside the base folder + var hrefInRoot = path.normalize(path.join(dir, _href)); + if (_href[0] == "/") hrefInRoot = path.normalize(_href.slice(1)); - if (process.platform === 'win32') { - _href = _href.replace(/\\/g, '/'); - } + // Make it relative to output + _href = path.relative(outdir, hrefInRoot); + + // Normalize windows paths + _href = _href.replace(/\\/g, '/'); return _href; }; |