mirror of
https://github.com/FranP-code/Baileys.git
synced 2025-10-13 00:32:22 +00:00
Wait for drain event before calling Writable.write() (#639)
This commit is contained in:
@@ -14,6 +14,7 @@ import KeyedDB from '@adiwajshing/keyed-db'
|
|||||||
import got, { Options, Response } from 'got'
|
import got, { Options, Response } from 'got'
|
||||||
import { join } from 'path'
|
import { join } from 'path'
|
||||||
import { IAudioMetadata } from 'music-metadata'
|
import { IAudioMetadata } from 'music-metadata'
|
||||||
|
import { once } from 'events'
|
||||||
|
|
||||||
const platformMap = {
|
const platformMap = {
|
||||||
'aix': 'AIX',
|
'aix': 'AIX',
|
||||||
@@ -359,7 +360,7 @@ export const encryptedStream = async(media: WAMediaUpload, mediaType: MessageTyp
|
|||||||
for await(const data of stream) {
|
for await(const data of stream) {
|
||||||
fileLength += data.length
|
fileLength += data.length
|
||||||
sha256Plain = sha256Plain.update(data)
|
sha256Plain = sha256Plain.update(data)
|
||||||
writeStream && writeStream.write(data)
|
if (writeStream && !writeStream.write(data)) await once(writeStream, 'drain')
|
||||||
onChunk(aes.update(data))
|
onChunk(aes.update(data))
|
||||||
}
|
}
|
||||||
onChunk(aes.final())
|
onChunk(aes.final())
|
||||||
@@ -371,9 +372,9 @@ export const encryptedStream = async(media: WAMediaUpload, mediaType: MessageTyp
|
|||||||
const fileEncSha256 = sha256Enc.digest()
|
const fileEncSha256 = sha256Enc.digest()
|
||||||
|
|
||||||
encWriteStream.write(mac)
|
encWriteStream.write(mac)
|
||||||
encWriteStream.close()
|
encWriteStream.end()
|
||||||
|
|
||||||
writeStream && writeStream.close()
|
writeStream && writeStream.end()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
mediaKey,
|
mediaKey,
|
||||||
|
|||||||
Reference in New Issue
Block a user