Skip to content

egl: Don't free source error after propagating it

local_error in meta_egl_query_device_string() is using g_autoptr,
meaning that it was getting freed after g_propagate_error(). This then
would result in error->message becoming invalid, causing crashes when
logging the error message later on.

This fixes a crash reported on Matrix: https://gist.github.com/retif/57add85aa2c90a3ecf2abf15451aef08 (The backtrace is missing debug symbols, but the content of the error message being logged clearly points to this being the issue)

Merge request reports