Fragen? Antworten! Siehe auch: Alternativlos
static gbooleanDiese Funktion wird nicht direkt aufgerufen, sondern einem Funktionszeiger zugewiesen, insofern ist unklar, ob das getriggert werden kann, aber … das ist ein klassischer Integer Overflow, den man sogar prima exploiten kann. Vielleicht hat jemand Bock, das mal den gtk-Jungs zu melden. Oh, und g_realloc kann NULL zurück geben, wenn context->size+size Null ist, in welchem Fall das darunter zu genau dem NULL Pointer Exploit wird, den Ilja in seinem Talk hatte :-)
gdk_pixbuf__gif_image_load_increment (gpointer data,
const guchar *buf, guint size,
GError **error)
{
[…]
if (size < context->amount_needed) {
[…]
} else if (size == context->amount_needed) {
[…]
} else {
context->buf = g_realloc (context->buf, context->size + size);
memcpy (context->buf + context->size, buf, size);
context->size += size;
}