Skip to content

Commit 36c2608

Browse files
committed
fix(storage): destroy writable stream on read error and reset read stream override in tests
1 parent d99faf6 commit 36c2608

2 files changed

Lines changed: 3 additions & 0 deletions

File tree

handwritten/storage/src/bucket.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4509,6 +4509,7 @@ class Bucket extends ServiceObject<Bucket, BucketMetadata> {
45094509
readStream
45104510
.on('error', err => {
45114511
readStream.destroy();
4512+
writable.destroy();
45124513
bail(err);
45134514
})
45144515
.pipe(writable)

handwritten/storage/test/bucket.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,7 @@ describe('Bucket', () => {
241241

242242
beforeEach(() => {
243243
fsStatOverride = null;
244+
fsCreateReadStreamOverride = null;
244245
pLimitOverride = null;
245246
bucket = new Bucket(STORAGE, BUCKET_NAME);
246247
});
@@ -3265,6 +3266,7 @@ describe('Bucket', () => {
32653266
bucket.upload(textfilepath, options, (err: Error) => {
32663267
try {
32673268
assert.strictEqual(err.message, 'write error');
3269+
assert.ok(readStream);
32683270
assert.ok(readStream.destroyed);
32693271
done();
32703272
} catch (e) {

0 commit comments

Comments
 (0)