[mutter] renderer-native: Fall back to ARGB if XRGB is not supported
- From: Marge Bot <marge-bot src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [mutter] renderer-native: Fall back to ARGB if XRGB is not supported
- Date: Fri, 29 Jul 2022 09:04:42 +0000 (UTC)
commit 7c8ffe7efebaf9a962484132a7dbfb4ce086c15a
Author: Daniel van Vugt <daniel van vugt canonical com>
Date: Wed Jul 20 09:09:45 2022 +0000
renderer-native: Fall back to ARGB if XRGB is not supported
This fixes mutter failing to start on some ARM/Mali boards.
Related: https://gitlab.gnome.org/GNOME/mutter/-/issues/2354
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2519>
src/backends/native/meta-renderer-native.c | 28 ++++++++++++++++++++++------
1 file changed, 22 insertions(+), 6 deletions(-)
---
diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c
index d538cc25a4..f5f22c7b1e 100644
--- a/src/backends/native/meta-renderer-native.c
+++ b/src/backends/native/meta-renderer-native.c
@@ -416,12 +416,28 @@ meta_renderer_native_choose_egl_config (CoglDisplay *cogl_display,
switch (renderer_gpu_data->mode)
{
case META_RENDERER_NATIVE_MODE_GBM:
- return choose_egl_config_from_gbm_format (egl,
- egl_display,
- attributes,
- GBM_FORMAT_XRGB8888,
- out_config,
- error);
+ {
+ static const uint32_t formats[] = {
+ GBM_FORMAT_XRGB8888,
+ GBM_FORMAT_ARGB8888,
+ };
+ int i;
+
+ for (i = 0; i < G_N_ELEMENTS (formats); i++)
+ {
+ g_clear_error (error);
+
+ if (choose_egl_config_from_gbm_format (egl,
+ egl_display,
+ attributes,
+ formats[i],
+ out_config,
+ error))
+ return TRUE;
+ }
+
+ return FALSE;
+ }
case META_RENDERER_NATIVE_MODE_SURFACELESS:
*out_config = EGL_NO_CONFIG_KHR;
return TRUE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]