summaryrefslogtreecommitdiff
path: root/packages/backend/src/core/FileInfoService.ts
diff options
context:
space:
mode:
authortamaina <tamaina@hotmail.co.jp>2024-02-21 14:42:37 +0900
committerGitHub <noreply@github.com>2024-02-21 14:42:37 +0900
commitae27085f691f331591117f531860b9c510897ae8 (patch)
treee0c75e48d6d45eeaf8a49daec6c70f74eac4b8ea /packages/backend/src/core/FileInfoService.ts
parentrefactor(backend): `ReactionService.prototype.convertLegacyReactions` (#13375) (diff)
downloadsharkey-ae27085f691f331591117f531860b9c510897ae8.tar.gz
sharkey-ae27085f691f331591117f531860b9c510897ae8.tar.bz2
sharkey-ae27085f691f331591117f531860b9c510897ae8.zip
fix: Bump sharp to 0.33.2 (#13391)
Diffstat (limited to 'packages/backend/src/core/FileInfoService.ts')
-rw-r--r--packages/backend/src/core/FileInfoService.ts9
1 files changed, 5 insertions, 4 deletions
diff --git a/packages/backend/src/core/FileInfoService.ts b/packages/backend/src/core/FileInfoService.ts
index b177367a16..b8babcb3a7 100644
--- a/packages/backend/src/core/FileInfoService.ts
+++ b/packages/backend/src/core/FileInfoService.ts
@@ -15,6 +15,7 @@ import isSvg from 'is-svg';
import probeImageSize from 'probe-image-size';
import { type predictionType } from 'nsfwjs';
import sharp from 'sharp';
+import { sharpBmp } from '@misskey-dev/sharp-read-bmp';
import { encode } from 'blurhash';
import { createTempDir } from '@/misc/create-temp.js';
import { AiService } from '@/core/AiService.js';
@@ -122,7 +123,7 @@ export class FileInfoService {
'image/avif',
'image/svg+xml',
].includes(type.mime)) {
- blurhash = await this.getBlurhash(path).catch(e => {
+ blurhash = await this.getBlurhash(path, type.mime).catch(e => {
warnings.push(`getBlurhash failed: ${e}`);
return undefined;
});
@@ -407,9 +408,9 @@ export class FileInfoService {
* Calculate average color of image
*/
@bindThis
- private getBlurhash(path: string): Promise<string> {
- return new Promise((resolve, reject) => {
- sharp(path)
+ private getBlurhash(path: string, type: string): Promise<string> {
+ return new Promise(async (resolve, reject) => {
+ (await sharpBmp(path, type))
.raw()
.ensureAlpha()
.resize(64, 64, { fit: 'inside' })