Skip to content
Commit 862e3890 authored by Colin Walters's avatar Colin Walters Committed by Matthias Clasen
Browse files

Add _new_from_bytes() and _read_pixels() API, handle read-only pixbufs

GdkPixbuf is an old API that predates introspection and GBytes.  It
has some confusion around whether or not pixbuf data is mutable or
not.  The _new_from_data() API takes a *const* pointer, but it's not
copied, and _get_pixels() returns a non-const copy of the same
pointer.

There are several cases where we get read-only data, such as a
GResource.  For language bindings, _new_from_data() doesn't work
because the array may be a temporary copy only allocated for the call.

In order to support a clean _new_from_bytes() API, we need to add the
concept of a read-only pixbuf into the core.  The fundamental hack
here is that _get_pixels() now causes an implicit copy.

For the cases where we don't want to copy, add a new
gdk_pixbuf_read_pixels() that returns a proper const pointer.

https://bugzilla.gnome.org/show_bug.cgi?id=732297
parent 882f16d6
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment