Fix avatar update

pull/1386/head
Chocobozzz 2018-10-08 10:37:08 +02:00
parent 4232d092bb
commit 505319061e
No known key found for this signature in database
GPG Key ID: 583A612D890159BE
2 changed files with 6 additions and 2 deletions

View File

@ -7,10 +7,11 @@ import { AccountModel } from '../models/account/account'
import { VideoChannelModel } from '../models/video/video-channel' import { VideoChannelModel } from '../models/video/video-channel'
import { extname, join } from 'path' import { extname, join } from 'path'
import { retryTransactionWrapper } from '../helpers/database-utils' import { retryTransactionWrapper } from '../helpers/database-utils'
import * as uuidv4 from 'uuid/v4'
async function updateActorAvatarFile (avatarPhysicalFile: Express.Multer.File, accountOrChannel: AccountModel | VideoChannelModel) { async function updateActorAvatarFile (avatarPhysicalFile: Express.Multer.File, accountOrChannel: AccountModel | VideoChannelModel) {
const extension = extname(avatarPhysicalFile.filename) const extension = extname(avatarPhysicalFile.filename)
const avatarName = accountOrChannel.Actor.uuid + extension const avatarName = uuidv4() + extension
const destination = join(CONFIG.STORAGE.AVATARS_DIR, avatarName) const destination = join(CONFIG.STORAGE.AVATARS_DIR, avatarName)
await processImage(avatarPhysicalFile, destination, AVATARS_SIZE) await processImage(avatarPhysicalFile, destination, AVATARS_SIZE)

View File

@ -23,7 +23,10 @@ export class AvatarModel extends Model<AvatarModel> {
@AfterDestroy @AfterDestroy
static removeFilesAndSendDelete (instance: AvatarModel) { static removeFilesAndSendDelete (instance: AvatarModel) {
logger.info('Removing avatar file %s.', instance.filename) logger.info('Removing avatar file %s.', instance.filename)
return instance.removeAvatar()
// Don't block the transaction
instance.removeAvatar()
.catch(err => logger.error('Cannot remove avatar file %s.', instance.filename, err))
} }
toFormattedJSON (): Avatar { toFormattedJSON (): Avatar {