From 2ef2602cc8136c87a2447f182fd3b1fa26df12aa Mon Sep 17 00:00:00 2001 From: Johannes Rieken Date: Fri, 21 Apr 2017 12:58:49 +0200 Subject: [PATCH] fix #24849 --- src/vs/base/common/uri.ts | 6 +++--- src/vs/base/test/common/uri.test.ts | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/vs/base/common/uri.ts b/src/vs/base/common/uri.ts index ff3068ff24e..8057cb01480 100644 --- a/src/vs/base/common/uri.ts +++ b/src/vs/base/common/uri.ts @@ -17,7 +17,7 @@ function encodeURIComponent2(str: string): string { } function encodeNoop(str: string): string { - return str; + return str.replace(/[#?]/, _encode); } @@ -364,10 +364,10 @@ export default class URI { while (true) { let idx = path.indexOf(URI._slash, lastIdx); if (idx === -1) { - parts.push(encoder(path.substring(lastIdx)).replace(/[#?]/, _encode)); + parts.push(encoder(path.substring(lastIdx))); break; } - parts.push(encoder(path.substring(lastIdx, idx)).replace(/[#?]/, _encode), URI._slash); + parts.push(encoder(path.substring(lastIdx, idx)), URI._slash); lastIdx = idx + 1; }; } diff --git a/src/vs/base/test/common/uri.test.ts b/src/vs/base/test/common/uri.test.ts index 777182fffe7..0b951b9f8c9 100644 --- a/src/vs/base/test/common/uri.test.ts +++ b/src/vs/base/test/common/uri.test.ts @@ -399,6 +399,10 @@ suite('URI', () => { uri2 = URI.parse(uri.toString()); assert.equal(uri2.query, 'LinkId=518008&foö&ké¥=üü'); assert.equal(uri2.query, uri.query); + + // #24849 + uri = URI.parse('https://twitter.com/search?src=typd&q=%23tag'); + assert.equal(uri.toString(true), 'https://twitter.com/search?src=typd&q=%23tag'); }); -- GitLab