退出时清理屏幕信息

This commit is contained in:
2025-11-14 05:17:36 +08:00
parent 94760fc2f8
commit 99389a763d
3 changed files with 53 additions and 7 deletions

View File

@@ -25,3 +25,27 @@ void monitor_initialize_tag(monitor_t *monitor, const char **tags) {
monitor->selected_tag = monitor->tag_list;
}
static void tag_clean(tag_t *tag) {
tag_t *next_tag = nullptr;
for (tag_t *t = tag; t; t = next_tag) {
p_delete(&t->name);
next_tag = t->next;
p_delete(&t);
}
}
void monitor_clean(monitor_t *monitor) {
monitor_t *next_monitor = nullptr;
for (monitor_t *m = monitor; m; m = next_monitor) {
p_delete(&m->name);
tag_clean(m->tag_list);
m->selected_tag = nullptr;
m->tag_list = nullptr;
next_monitor = m->next;
p_delete(&m);
}
}