From 446c7888d0d974bf4c81f7f1e8d88ca13e4d210f Mon Sep 17 00:00:00 2001 From: John Furrow Date: Mon, 4 Jul 2016 15:07:43 -0700 Subject: [PATCH] Encode and decode labels as URI components --- server/models/ClientRequest.js | 2 +- server/models/Torrent.js | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/server/models/ClientRequest.js b/server/models/ClientRequest.js index 5646e9a2..9ceff3ff 100644 --- a/server/models/ClientRequest.js +++ b/server/models/ClientRequest.js @@ -294,7 +294,7 @@ class ClientRequest { let methodName = 'd.custom1.set'; let tags = options.tags.reduce((memo, currentTag) => { - let tag = currentTag.trim(); + let tag = encodeURIComponent(currentTag.trim()); if (tag !== '' && memo.indexOf(tag) === -1) { memo.push(tag); diff --git a/server/models/Torrent.js b/server/models/Torrent.js index a366d4fd..1f9dda94 100644 --- a/server/models/Torrent.js +++ b/server/models/Torrent.js @@ -203,7 +203,9 @@ class Torrent { } getCalculatedTags(clientData) { - return clientData.tags.split(',').sort(); + return clientData.tags.split(',').sort().map((tag) => { + return decodeURIComponent(tag); + }); } getCalculatedTotalPeers(clientData) {