Imager-Craft icon indicating copy to clipboard operation
Imager-Craft copied to clipboard

Imager trying to load image file that hasn't been transformed yet

Open martinhellwagner opened this issue 5 years ago • 3 comments
trafficstars

In our Sentry, we're periodically seeing errors where Imager (or rather Color Thief, upon a function call triggered by Imager) is trying to load an image file that hasn't been transformed yet. This triggers a Runtime Exception as well as a 500 Server Error for the first user to visit the site. All subsequent visits (when the image has been transformed) work without problems.

Is it possible that a check is missing which determines whether or not the image has been transformed and can be processed further?

We are querying the dominant color in our Twig like so:

    {# -- Dominant Color (use last image from final images) -- #}
    {% if transformedImages | last and (transformedImages | last).url %}
        {% set dominantColor = craft.imager.getDominantColor((transformedImages | last).url, 10) %}
    {% endif %}

Everything else is done in Imager (see Stack Trace in the screenshot below):

Screenshot 2020-10-16 at 14 38 41

martinhellwagner avatar Oct 16 '20 12:10 martinhellwagner

What is transformedImages?

aelvan avatar Oct 16 '20 13:10 aelvan

My apologies, forgot to include this line of code:

    {# -- Final Image Set -- #}
    {% set transformedImages = craft.imager.transformImage(image, sizes, imageSettings) %}

Basically transformedImages is what we're getting back from imager when calling the transformImage function for a certain image.

martinhellwagner avatar Oct 16 '20 13:10 martinhellwagner

@aelvan

Do you have any updates on this?

martinhellwagner avatar Nov 24 '20 15:11 martinhellwagner