Skip to content

Commit 09d900e

Browse files
sallyomclaude
andcommitted
Fix Buffer to ArrayBuffer conversion using proper allocation
Create new ArrayBuffer and copy Buffer data using Uint8Array.set() to avoid SharedArrayBuffer type issues. Fixes: Type 'ArrayBuffer | SharedArrayBuffer' is not assignable to type 'ArrayBuffer' 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <[email protected]>
1 parent ddabe03 commit 09d900e

File tree

1 file changed

+5
-2
lines changed
  • components/frontend/src/app/api/projects/[name]/agentic-sessions/[sessionName]/workspace/upload

1 file changed

+5
-2
lines changed

components/frontend/src/app/api/projects/[name]/agentic-sessions/[sessionName]/workspace/upload/route.ts

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,11 @@ async function compressImageIfNeeded(
8484
`Compressed image: ${buffer.byteLength} bytes -> ${compressed.byteLength} bytes (${Math.round((compressed.byteLength / buffer.byteLength) * 100)}%)`
8585
);
8686

87-
// Convert Buffer to ArrayBuffer
88-
return compressed.buffer.slice(compressed.byteOffset, compressed.byteOffset + compressed.byteLength);
87+
// Convert Node.js Buffer to ArrayBuffer by creating a new ArrayBuffer and copying data
88+
const arrayBuffer = new ArrayBuffer(compressed.byteLength);
89+
const view = new Uint8Array(arrayBuffer);
90+
view.set(compressed);
91+
return arrayBuffer;
8992
} catch (error) {
9093
console.error('Failed to compress image:', error);
9194
// If compression fails, throw error rather than uploading oversized file

0 commit comments

Comments
 (0)