From 46e1613ba722b13fb93811e512934ba6eaabdcba Mon Sep 17 00:00:00 2001 From: agatronic Date: Tue, 30 Apr 2013 18:16:00 +0100 Subject: [PATCH] Handle ./ paths in the browser when relative correctly. Fixes #1238 --- lib/less/browser.js | 8 ++++++++ test/browser/less/relative-urls/urls.less | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/less/browser.js b/lib/less/browser.js index 098eca38..f360019f 100644 --- a/lib/less/browser.js +++ b/lib/less/browser.js @@ -223,6 +223,14 @@ function extractUrlParts(url, baseUrl) { if (urlParts[3]) { directories = urlParts[3].replace("\\", "/").split("/"); + // extract out . before .. so .. doesn't absorb a non-directory + for(i = 0; i < directories.length; i++) { + if (directories[i] === ".") { + directories.splice(i, 1); + i -= 1; + } + } + for(i = 0; i < directories.length; i++) { if (directories[i] === ".." && i > 0) { directories.splice(i-1, 2); diff --git a/test/browser/less/relative-urls/urls.less b/test/browser/less/relative-urls/urls.less index 1c5ac888..7923d4c8 100644 --- a/test/browser/less/relative-urls/urls.less +++ b/test/browser/less/relative-urls/urls.less @@ -1,4 +1,4 @@ -@import "../imports/urls.less"; +@import ".././imports/urls.less"; @import "http://localhost:8081/browser/less/imports/urls2.less"; @font-face { src: url("/fonts/garamond-pro.ttf");