mirror of
https://github.com/snapotter-hq/SnapOtter.git
synced 2026-08-03 07:46:42 +02:00
fix: QA sweep -- SSE crash, memory leaks, HEIC Docker decode, TGA detection, lint cleanup
- Fix SSE write-after-end crash in progress.ts (remove callback before ending stream) - Fix blob URL memory leaks: revoke processedPreviewUrl and old HEIC preview URLs - Add AbortController to batch fetch in use-tool-processor and use-pipeline-processor - Fix TGA format misidentified as CUR (extension overrides magic bytes) - Add libheif-plugin-libde265 to Docker for HEIC/HEIF decode support - Remove unused imports and state (AppLayout, setSampledColor, useEffect) - Fix non-null assertions in meme-text-renderer and meme-generator - Fix confusing void type in meme-templates - Remove unnecessary useEffect deps in adjustments-panel - Fix Playwright strict mode violations in 5 E2E tests
This commit is contained in:
@@ -221,8 +221,8 @@ export async function validateImageBuffer(
|
||||
detectedFormat = "raw";
|
||||
}
|
||||
|
||||
// TGA has no magic bytes — detect by extension only
|
||||
if (!detectedFormat && ext === "tga") {
|
||||
// TGA has no magic bytes and its header can match other formats (e.g. CUR)
|
||||
if (ext === "tga") {
|
||||
detectedFormat = "tga";
|
||||
}
|
||||
|
||||
|
||||
@@ -56,9 +56,8 @@ const fontCache = new Map<string, opentype.Font>();
|
||||
export function loadFont(family: string): opentype.Font {
|
||||
const filename = FONT_MAP[family] ?? FONT_MAP.anton;
|
||||
|
||||
if (fontCache.has(filename)) {
|
||||
return fontCache.get(filename)!;
|
||||
}
|
||||
const cached = fontCache.get(filename);
|
||||
if (cached) return cached;
|
||||
|
||||
const buf = readFileSync(join(FONT_DIR, filename));
|
||||
let font: opentype.Font;
|
||||
|
||||
Reference in New Issue
Block a user