[6.2.2] - 2026-06-29
Fixed
-
Focus-Point-Crop bleibt bei WebP/AVIF erhalten:
rex_effect_negotiatorverwendet inconvertWithFallback()jetzt die aktuell prozessierte Quelle aus der Effektkette ($this->media->getSource()) statt den Original-Dateipfad (getMediaPath()). -
Damit gehen Crops aus vorgeschalteten Effekten (z. B. Focus-Point-Fit) bei ausgehandelten Formaten nicht mehr verloren.
-
Converter-Kette vereinfacht: vips und Imagick geben nun direkt den konvertierten Bild-Blob zurück (statt
GdImage), womit der GD-Fallback entfällt. Fallback bei fehlschlagenden Konvertern ist jetzt das Original-Format (JPEG/PNG). -
Helper::vipsConvert()undHelper::imagickConvert()liefernstring|falsestattGdImage|false– GD wird nicht mehr zum Dekodieren der Converter-Ausgabe verwendet. -
rex_effect_negotiatornutzt eineconvertWithFallback()-Methode mittry/catch(\Throwable), um Converter-Fehler abzufangen ohne den Media-Request zu blockieren. -
Konvertierter Blob wird über
setSourceFromBlob()als Temp-Datei mit korrekter Format-Extension (.webp,.avif) gespeichert, was korrekte Content-Type- und Content-Disposition-Header sicherstellt. -
Gesamte
execute()-Logik in einentry/catch(\Throwable)-Block gewrappt, damit Negotiator-Fehler niemals einen Media-Manager-Request abbrechen.