From 9ccb0151bcbe9d1d8bc99c3f0ff25f3e64457b3f Mon Sep 17 00:00:00 2001 From: jomo Date: Wed, 20 Jan 2016 01:28:54 +0100 Subject: [PATCH] don't search/replace username in path fixes faulty URLs when part of the path is used as username (e.g. 'avatars') --- lib/routes/avatars.js | 3 ++- lib/routes/renders.js | 3 ++- lib/routes/skins.js | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/routes/avatars.js b/lib/routes/avatars.js index 24d6497..9541faf 100644 --- a/lib/routes/avatars.js +++ b/lib/routes/avatars.js @@ -14,7 +14,8 @@ function handle_default(img_status, userId, size, def, req, err, callback) { var parsed = req.url; delete parsed.query.default; delete parsed.search; - parsed.pathname = parsed.pathname.replace(userId, def); + parsed.path_list[1] = def; + parsed.pathname = "/" + parsed.path_list.join("/"); var newUrl = url.format(parsed); callback({ status: img_status, diff --git a/lib/routes/renders.js b/lib/routes/renders.js index 90ca267..8295535 100644 --- a/lib/routes/renders.js +++ b/lib/routes/renders.js @@ -19,7 +19,8 @@ function handle_default(rid, scale, overlay, body, img_status, userId, size, def var parsed = req.url; delete parsed.query.default; delete parsed.search; - parsed.pathname = parsed.pathname.replace(userId, def); + parsed.path_list[2] = def; + parsed.pathname = "/" + parsed.path_list.join("/"); var newUrl = url.format(parsed); callback({ status: img_status, diff --git a/lib/routes/skins.js b/lib/routes/skins.js index f71991a..445c7cc 100644 --- a/lib/routes/skins.js +++ b/lib/routes/skins.js @@ -15,7 +15,8 @@ function handle_default(img_status, userId, def, req, err, callback) { var parsed = req.url; delete parsed.query.default; delete parsed.search; - parsed.pathname = parsed.pathname.replace(userId, def); + parsed.path_list[1] = def; + parsed.pathname = "/" + parsed.path_list.join("/"); var newUrl = url.format(parsed); callback({ status: img_status,