logo

pleroma-fe

My custom branche(s) on git.pleroma.social/pleroma/pleroma-fe
commit: d2f0e4e7d515afe4b15d4e6a0e52d9fee2349c4a
parent: 2b3c4ccfaeddb6a05c7a97e669daa17c2058727c
Author: Shpuld Shpludson <shp@cock.li>
Date:   Thu,  9 Jul 2020 09:29:20 +0000

Merge branch '888-fix-utf8-base64-decoding' into 'develop'

After Store: Correctly decode UTF-8 encoded base64 strings.

Closes #888

See merge request pleroma/pleroma-fe!1176

Diffstat:

Msrc/boot/after_store.js10+++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/boot/after_store.js b/src/boot/after_store.js @@ -20,12 +20,20 @@ const parsedInitialResults = () => { return staticInitialResults } +const decodeUTF8Base64 = (data) => { + const rawData = atob(data) + const array = Uint8Array.from([...rawData].map((char) => char.charCodeAt(0))) + const text = new TextDecoder().decode(array) + return text +} + const preloadFetch = async (request) => { const data = parsedInitialResults() if (!data || !data[request]) { return window.fetch(request) } - const requestData = JSON.parse(atob(data[request])) + const decoded = decodeUTF8Base64(data[request]) + const requestData = JSON.parse(decoded) return { ok: true, json: () => requestData,