Dirty webtorrent fix to wait FS sync

This commit is contained in:
Chocobozzz 2018-09-25 19:42:05 +02:00
parent 4a08f66927
commit 69fa54a0b2
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
1 changed files with 4 additions and 2 deletions

View File

@ -1,5 +1,4 @@
import { logger } from './logger' import { logger } from './logger'
import { generateVideoTmpPath } from './utils'
import * as WebTorrent from 'webtorrent' import * as WebTorrent from 'webtorrent'
import { remove } from 'fs-extra' import { remove } from 'fs-extra'
import { CONFIG } from '../initializers' import { CONFIG } from '../initializers'
@ -26,7 +25,10 @@ function downloadWebTorrentVideo (target: { magnetUri: string, torrentName?: str
.then(() => rej(new Error('Cannot import torrent ' + torrentId + ': there are multiple files in it'))) .then(() => rej(new Error('Cannot import torrent ' + torrentId + ': there are multiple files in it')))
} }
torrent.on('done', () => res(join(CONFIG.STORAGE.VIDEOS_DIR, torrent.files[ 0 ].path))) torrent.on('done', () => {
// FIXME: Dirty fix, we need to wait the FS sync but webtorrent does not provide such method
setTimeout(() => res(join(CONFIG.STORAGE.VIDEOS_DIR, torrent.files[ 0 ].name)), 1000)
})
}) })
torrent.on('error', err => rej(err)) torrent.on('error', err => rej(err))