From a3646721bc6eacb63c0611a070ada35a9b4dacdc Mon Sep 17 00:00:00 2001 From: tokyo4j Date: Thu, 12 Mar 2026 01:17:11 +0900 Subject: [PATCH] view: clear view->{title,app_id} later in view_destroy() ...as it *feels* unsafe to call functions like `undecorate()` after clearing view->{title,app_id}, which are expected to be non-NULL. --- src/view.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/view.c b/src/view.c index e833d264..0333d6e6 100644 --- a/src/view.c +++ b/src/view.c @@ -2501,9 +2501,6 @@ view_destroy(struct view *view) wl_list_remove(&view->set_title.link); wl_list_remove(&view->destroy.link); - zfree(view->title); - zfree(view->app_id); - if (view->foreign_toplevel) { foreign_toplevel_destroy(view->foreign_toplevel); view->foreign_toplevel = NULL; @@ -2558,6 +2555,9 @@ view_destroy(struct view *view) assert(wl_list_empty(&view->events.set_icon.listener_list)); assert(wl_list_empty(&view->events.destroy.listener_list)); + zfree(view->title); + zfree(view->app_id); + /* Remove view from server->views */ wl_list_remove(&view->link); free(view);