From: Daniel van Vugt Date: Thu, 11 Oct 2018 06:49:22 +0000 (+0200) Subject: cogl-auto-texture: Avoid a double-free crash X-Git-Tag: archive/raspbian/3.30.2-7+rpi1~1^2^2~5 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=a8d75a67fd6f7f9f1ebdccc374951d4b4346970b;p=mutter.git cogl-auto-texture: Avoid a double-free crash If texture allocation fails (e.g. on an old GPU with size limit 2048) then `cogl_texture_new_with_size` was trying to use the same CoglError twice. The second time was after it had already been freed. Bug reported and fix provided by Gert van de Kraats. Origin: https://gitlab.gnome.org/GNOME/mutter/commit/d21478b0f Bug-Ubuntu: https://launchpad.net/bugs/1790525 Applied-upstream: 3.30.3 Gbp-Pq: Name cogl-auto-texture-Avoid-a-double-free-crash.patch --- diff --git a/cogl/cogl/deprecated/cogl-auto-texture.c b/cogl/cogl/deprecated/cogl-auto-texture.c index 29a5f73..fe52e15 100644 --- a/cogl/cogl/deprecated/cogl-auto-texture.c +++ b/cogl/cogl/deprecated/cogl-auto-texture.c @@ -94,6 +94,7 @@ cogl_texture_new_with_size (unsigned int width, if (!cogl_texture_allocate (tex, &skip_error)) { cogl_error_free (skip_error); + skip_error = NULL; cogl_object_unref (tex); tex = NULL; }