@@ -32,7 +32,7 @@ export class ImageMediaService {
3232 if ( ! ( options . preset in presets ) ) options . preset = ImageMediaPreset . CUSTOM ;
3333 if ( options . preset ) Object . assign ( options , presets [ options . preset ] ) ;
3434 let instructions = sharp ( file . multer . buffer ) ;
35- const metadata = await instructions . metadata ( ) ;
35+ let metadata = await instructions . metadata ( ) ;
3636 const size = [ metadata . width , metadata . height ] ;
3737 if ( options . rotation ) {
3838 instructions = instructions . rotate ( options . rotation * 90 ) ;
@@ -43,16 +43,16 @@ export class ImageMediaService {
4343 if ( options . width && options . height )
4444 instructions = instructions . resize ( options . width , options . height , { fit : 'cover' } ) ;
4545 file . mime = 'image/webp' ;
46- file . multer . buffer = await instructions
47- . webp ( {
48- quality : options . quality ,
49- effort : options . effort ,
50- nearLossless : true ,
51- smartSubsample : true ,
52- alphaQuality : options . quality ,
53- } )
54- . toBuffer ( ) ;
55- return { width : size [ 0 ] , height : size [ 1 ] , size : file . multer . buffer . length , preset : options . preset } ;
46+ instructions = instructions . webp ( {
47+ quality : options . quality ,
48+ effort : options . effort ,
49+ nearLossless : true ,
50+ smartSubsample : true ,
51+ alphaQuality : options . quality ,
52+ } ) ;
53+ file . multer . buffer = await instructions . toBuffer ( ) ;
54+ metadata = await sharp ( file . multer . buffer ) . metadata ( ) ;
55+ return { width : metadata . width , height : metadata . height , size : file . multer . buffer . length , preset : options . preset } ;
5656 }
5757
5858 async registerMedia ( metaData : ImageMetadata , uploader : User , isPublic : boolean ) : Promise < ImageMedia > {
0 commit comments