From e1a0daac9c02da81743c0cf2100625c9b3b2c86c Mon Sep 17 00:00:00 2001 From: ansuz Date: Thu, 12 Mar 2020 11:23:43 -0400 Subject: [PATCH] possible server fixes --- lib/storage/file.js | 5 ++++- lib/stream-file.js | 10 +++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/lib/storage/file.js b/lib/storage/file.js index 6d2c672a5..053ecc9c7 100644 --- a/lib/storage/file.js +++ b/lib/storage/file.js @@ -101,6 +101,9 @@ var getMetadataAtPath = function (Env, path, _cb) { if (i++ > 0) { console.log("aborting"); abort(); + try { stream.close(); } catch (err) { + console.log("could not close stream"); + } return void cb(); } var metadata; @@ -890,7 +893,7 @@ var trimChannel = function (env, channelName, hash, _cb) { var retain = false; var handler = function (msgObj, readMore, abort) { - if (ABORT) { return void abort(); } + if (ABORT) { return void abort(); } // XXX // the first message might be metadata... ignore it if so if (i++ === 0 && msgObj.buff.indexOf('{') === 0) { return readMore(); diff --git a/lib/stream-file.js b/lib/stream-file.js index dc44aaf50..c3130365b 100644 --- a/lib/stream-file.js +++ b/lib/stream-file.js @@ -67,7 +67,15 @@ Stream.readFileBin = (stream, msgHandler, cb) => { mkBufferSplit(), mkOffsetCounter(), Pull.asyncMap((data, moreCb) => { - msgHandler(data, moreCb, () => { keepReading = false; moreCb(); }); + msgHandler(data, moreCb, () => { + try { + stream.close(); + } catch (err) { + console.error("READ_FILE_BIN_ERR", err); + } + keepReading = false; + moreCb(); + }); }), Pull.drain(() => (keepReading), (err) => { cb((keepReading) ? err : undefined);