Details
-
Bug
-
Status: Open
-
Trivial
-
Resolution: Unresolved
-
1.0.0
-
None
-
Google Chrome
Description
When creating a custom HTML/JS Guacamole client to write files to a VM using the BlobWriter JS class, an error similar to the following is generated (error is from running the code in Google Chrome):
zone.js:1495 Uncaught (in promise) DOMException: Failed to execute 'readAsArrayBuffer' on 'FileReader': The object is already busy reading Blobs.
at _global.<computed>.<computed> [as readAsArrayBuffer] (https://redacted/polyfills.6e39da16eddfecb84434.js:3830:60)
at readNextChunk (https://redacted/main.51a4f7c78afe09ae8d5e.js:168269:20)
at push../src/app/components/core/desktop/js/BlobWriter.js.redacted.ArrayBufferWriter.sendMoreChunks [as onack] (https://redacted/main.51a4f7c78afe09ae8d5e.js:168295:17)
at push../node_modules/guacamole-common-js/dist/guacamole-common.js.Guacamole.OutputStream.stream.onack (https://redacted/main.51a4f7c78afe09ae8d5e.js:168396:25)
at ack (https://redacted/main.51a4f7c78afe09ae8d5e.js:114024:28)
at push../node_modules/guacamole-common-js/dist/guacamole-common.js.Guacamole.HTTPTunnel.tunnel.oninstruction (https://redacted/main.51a4f7c78afe09ae8d5e.js:114685:13)
at XMLHttpRequest.parseResponse [as __zone_symbol__ON_PROPERTYreadystatechange] (https://redacted/main.51a4f7c78afe09ae8d5e.js:123910:40)
at XMLHttpRequest.wrapFn (https://redacted/polyfills.6e39da16eddfecb84434.js:3667:39)
at ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (https://redacted/polyfills.6e39da16eddfecb84434.js:2758:31)
at Object.onInvokeTask (https://redacted/main.51a4f7c78afe09ae8d5e.js:33312:33)
While a file would ultimately get written to the remote VM, it is never a complete file given the error above, which seems to be indicative of the asynchronous nature of the file transfer activity and the contentious use of the BlobWriter FileReader object.