From fea21f750b913b04af52def0ba3d5aa1810fbeac Mon Sep 17 00:00:00 2001 From: Aleksey Filippov Date: Mon, 16 Mar 2026 16:17:43 +0300 Subject: [PATCH] =?utf8?q?fix(ERP-257):=20graceful=20fallback=20=D0=B4?= =?utf8?q?=D0=BB=D1=8F=20HEIC-=D1=84=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2,=20?= =?utf8?q?=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D1=8B=D0=B5=20=D1=83=D0=B6=D0=B5?= =?utf8?q?=20=D1=8F=D0=B2=D0=BB=D1=8F=D1=8E=D1=82=D1=81=D1=8F=20JPEG?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit iPhone иногда сохраняет JPEG с расширением .HEIC. Библиотека heic2any бросала ERR_USER вместо того, чтобы пропустить файл. Теперь при ошибке "already browser readable" файл передаётся как есть с корректным расширением. --- erp24/web/js/heic_to_jpg_replace.js | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/erp24/web/js/heic_to_jpg_replace.js b/erp24/web/js/heic_to_jpg_replace.js index 927ff7e6..1e1c765a 100644 --- a/erp24/web/js/heic_to_jpg_replace.js +++ b/erp24/web/js/heic_to_jpg_replace.js @@ -42,6 +42,15 @@ $(document).on('change', 'input[type=file]', function (e) { }); }) .catch(function (x) { + // Файл с расширением .HEIC, но внутри уже JPEG/PNG (iPhone) + // — пропускаем конвертацию, просто переименовываем + if (x.code === 1 && /already browser readable/i.test(x.message)) { + var ext = (x.message.match(/image\/(jpeg|png|webp)/i) || [null, 'jpeg'])[1]; + return new File([file], file.name + "." + ext, { + type: "image/" + ext, + lastModified: new Date().getTime() + }); + } alert("Ошибка конвертации HEIC: " + file.name + ". " + x.code + " - " + x.message); return null; }) -- 2.39.5