[mutter/gnome-40] onscreen/native: Warn instead of crashing if the frame_info queue is empty



commit bde931f04509ac6e0c82bd631afe44cf045bf76c
Author: Daniel van Vugt <daniel van vugt canonical com>
Date:   Tue Nov 2 18:48:45 2021 +0800

    onscreen/native: Warn instead of crashing if the frame_info queue is empty
    
    Some Ubuntu systems with mutter 40 and 41 report `maybe_update_frame_info`
    crashes with SIGSEGV when `frame_info == NULL`.
    
    The same was reported by @rmader as happening "after wakeup" in testing
    (https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1441#note_1301588)
    although the Ubuntu reports show it's not related to that MR.
    
    Fixes: https://launchpad.net/bugs/1960585
    Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2282>
    
    (cherry picked from commit b7f7b82b891a702aa55b33ba8a33054829b92509)

 src/backends/native/meta-onscreen-native.c | 2 ++
 1 file changed, 2 insertions(+)
---
diff --git a/src/backends/native/meta-onscreen-native.c b/src/backends/native/meta-onscreen-native.c
index c9514b9e7a..3b5ec9ad97 100644
--- a/src/backends/native/meta-onscreen-native.c
+++ b/src/backends/native/meta-onscreen-native.c
@@ -224,6 +224,8 @@ notify_view_crtc_presented (MetaRendererView *view,
 
   frame_info = cogl_onscreen_peek_head_frame_info (onscreen);
 
+  g_return_if_fail (frame_info != NULL);
+
   crtc = META_CRTC (meta_crtc_kms_from_kms_crtc (kms_crtc));
   maybe_update_frame_info (crtc, frame_info, time_us, flags, sequence);
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]