Merge pull request #39 from ente-io/too-many-files

Close file when streaming done
This commit is contained in:
Abhinav Kumar 2022-07-22 16:32:35 +05:30 committed by GitHub
commit 9b7fa381cb
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 15 deletions

View file

@ -1,7 +1,7 @@
{
"name": "ente",
"productName": "ente",
"version": "1.5.1",
"version": "1.5.2",
"private": true,
"description": "Desktop client for ente.io",
"main": "app/main.js",

View file

@ -28,6 +28,7 @@ const getFileStream = async (filePath: string) => {
let offset = 0;
const readableStream = new ReadableStream<Uint8Array>({
async pull(controller) {
try {
const buff = new Uint8Array(FILE_STREAM_CHUNK_SIZE);
// original types were not working correctly
@ -41,9 +42,14 @@ const getFileStream = async (filePath: string) => {
offset += bytesRead;
if (bytesRead === 0) {
controller.close();
await fs.close(file);
} else {
controller.enqueue(buff);
}
} catch (e) {
logError(e, 'stream pull failed');
await fs.close(file);
}
},
});
return readableStream;