Blame SOURCES/0003-xwayland-Always-use-xwl_present_free_event-for-freei.patch

315c3e
From 99e9854c5fab7114b26c272088d9202548da55bf Mon Sep 17 00:00:00 2001
315c3e
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <mdaenzer@redhat.com>
315c3e
Date: Fri, 19 Jun 2020 18:14:35 +0200
315c3e
Subject: [PATCH xserver 3/4] xwayland: Always use xwl_present_free_event for
315c3e
 freeing Present events
315c3e
MIME-Version: 1.0
315c3e
Content-Type: text/plain; charset=UTF-8
315c3e
Content-Transfer-Encoding: 8bit
315c3e
315c3e
Minor cleanup, and will make the next change simpler. No functional
315c3e
change intended.
315c3e
315c3e
Reviewed-by: Dave Airlie <airlied@redhat.com>
315c3e
(cherry picked from commit 1beffba699e2cc3f23039d2177c025bc127966de)
315c3e
Signed-off-by: Michel Dänzer <mdaenzer@redhat.com>
315c3e
---
315c3e
 hw/xwayland/xwayland-present.c | 27 ++++++++++++---------------
315c3e
 1 file changed, 12 insertions(+), 15 deletions(-)
315c3e
315c3e
diff --git a/hw/xwayland/xwayland-present.c b/hw/xwayland/xwayland-present.c
315c3e
index 5ba7dce08..492e4a876 100644
315c3e
--- a/hw/xwayland/xwayland-present.c
315c3e
+++ b/hw/xwayland/xwayland-present.c
315c3e
@@ -111,6 +111,13 @@ xwl_present_reset_timer(struct xwl_present_window *xwl_present_window)
315c3e
     }
315c3e
 }
315c3e
 
315c3e
+static void
315c3e
+xwl_present_free_event(struct xwl_present_event *event)
315c3e
+{
315c3e
+    xorg_list_del(&event->list);
315c3e
+    free(event);
315c3e
+}
315c3e
+
315c3e
 void
315c3e
 xwl_present_cleanup(WindowPtr window)
315c3e
 {
315c3e
@@ -128,17 +135,15 @@ xwl_present_cleanup(WindowPtr window)
315c3e
     }
315c3e
 
315c3e
     /* Clear remaining events */
315c3e
-    xorg_list_for_each_entry_safe(event, tmp, &xwl_present_window->event_list, list) {
315c3e
-        xorg_list_del(&event->list);
315c3e
-        free(event);
315c3e
-    }
315c3e
+    xorg_list_for_each_entry_safe(event, tmp, &xwl_present_window->event_list, list)
315c3e
+        xwl_present_free_event(event);
315c3e
 
315c3e
     /* Clear remaining buffer releases and inform Present about free ressources */
315c3e
     event = xwl_present_window->sync_flip;
315c3e
     xwl_present_window->sync_flip = NULL;
315c3e
     if (event) {
315c3e
         if (event->buffer_released) {
315c3e
-            free(event);
315c3e
+            xwl_present_free_event(event);
315c3e
         } else {
315c3e
             event->pending = FALSE;
315c3e
             event->abort = TRUE;
315c3e
@@ -160,13 +165,6 @@ xwl_present_cleanup(WindowPtr window)
315c3e
     free(xwl_present_window);
315c3e
 }
315c3e
 
315c3e
-static void
315c3e
-xwl_present_free_event(struct xwl_present_event *event)
315c3e
-{
315c3e
-    xorg_list_del(&event->list);
315c3e
-    free(event);
315c3e
-}
315c3e
-
315c3e
 static void
315c3e
 xwl_present_buffer_release(void *data, struct wl_buffer *buffer)
315c3e
 {
315c3e
@@ -216,7 +214,7 @@ xwl_present_msc_bump(struct xwl_present_window *xwl_present_window)
315c3e
             /* If the buffer was already released, clean up now */
315c3e
             present_wnmd_event_notify(xwl_present_window->window, event->event_id,
315c3e
                                       xwl_present_window->ust, msc);
315c3e
-            free(event);
315c3e
+            xwl_present_free_event(event);
315c3e
         } else {
315c3e
             xorg_list_add(&event->list, &xwl_present_window->release_queue);
315c3e
         }
315c3e
@@ -392,8 +390,7 @@ xwl_present_abort_vblank(WindowPtr present_window,
315c3e
 
315c3e
     xorg_list_for_each_entry_safe(event, tmp, &xwl_present_window->event_list, list) {
315c3e
         if (event->event_id == event_id) {
315c3e
-            xorg_list_del(&event->list);
315c3e
-            free(event);
315c3e
+            xwl_present_free_event(event);
315c3e
             return;
315c3e
         }
315c3e
     }
315c3e
-- 
315c3e
2.26.2
315c3e