diff --git a/src/loader/XHRLoader.js b/src/loader/XHRLoader.js index e05115b313..2f2a337a12 100644 --- a/src/loader/XHRLoader.js +++ b/src/loader/XHRLoader.js @@ -27,9 +27,17 @@ var XHRLoader = function (file, globalXHRSettings) { var base64Data = file.url.split(';base64,').pop() || file.url.split(',').pop(); - var fakeXHR = { - responseText: atob(base64Data) - }; + var fakeXHR; + + if (file.xhrSettings.responseType === 'arraybuffer') { + fakeXHR = { + response: Uint8Array.from(atob(base64Data), c => c.charCodeAt(0)).buffer + }; + } else { + fakeXHR = { + responseText: atob(base64Data) + }; + } file.onBase64Load(fakeXHR);