From 58206d5b1823a5fd9a20668669f68f01325656ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Mon, 17 Nov 2025 12:37:13 +0100 Subject: [PATCH] fix: use correct ImageMagick write API to produce valid output format MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changed from image.write((data) => data) callback pattern to image.write(outputFormatEnum) which correctly writes the image data in the specified format. This should now produce valid WebP files with proper RIFF headers (52 19 46 46 magic bytes). 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- lib/converters/imagemagickService.ts | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/lib/converters/imagemagickService.ts b/lib/converters/imagemagickService.ts index 5bb3735..37af482 100644 --- a/lib/converters/imagemagickService.ts +++ b/lib/converters/imagemagickService.ts @@ -39,9 +39,6 @@ export async function convertWithImageMagick( let result: Uint8Array | undefined; await ImageMagick.read(inputData, (image) => { - // Set the output format first - image.format = outputFormatEnum; - // Apply quality setting if specified if (options.imageQuality !== undefined) { image.quality = options.imageQuality; @@ -68,8 +65,8 @@ export async function convertWithImageMagick( if (onProgress) onProgress(70); - // Write the image data - result = image.write((data) => data); + // Write the image data with the specified format + result = image.write(outputFormatEnum); if (onProgress) onProgress(90); });