Hi,
On 16 April 2013 10:06, Koen Kooi <[email protected]> wrote:
> I've been looking into the libpng problems people have been reporting (e.g.
> #4060) and tried to upgrade 1.16.1 to fix those. Long story short, 1.16.1
> doesn't fix them. I'm currently using weston as a testbed and was able to
> narrow the problems with weston down to:
>
> cairo_surface_t *surface = cairo_image_surface_create_from_png(icon);
>
> with ends up as:
>
> ERROR loading icon from file
> '/usr/share/icons/gnome/24x24/apps/utilities-terminal.png', error: 'out of
> memory'
I just spoke to Chris Wilson about this. libpng 1.6 is throwing more
warnings to the caller, often about invalid PNG extensions that are
being ignored apparently, and cairo-png is being over-zealous (his
words) in handling the warnings, by turning them into errors.
static void
png_simple_warning_callback (png_structp png,
png_const_charp error_msg)
{
cairo_status_t *error = png_get_error_ptr (png);
/* default to the most likely error */
if (*error == CAIRO_STATUS_SUCCESS)
*error = _cairo_error (CAIRO_STATUS_NO_MEMORY);
/* png does not expect to abort and will try to tidy up after a warning */
}
The warnings are just warnings and libpng will continue to load the
images. Sending a patch once this git clone has finished.
Ross
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core