From 9e4fade55e53033ef4473d13285bba20467ab223 Mon Sep 17 00:00:00 2001 From: DreamMaoMao <2523610504@qq.com> Date: Tue, 19 May 2026 13:59:38 +0800 Subject: [PATCH] fix: cransh in disable monitor when use scratchpad --- src/fetch/client.h | 7 +++++++ src/fetch/monitor.h | 2 +- src/mango.c | 3 ++- 3 files changed, 10 insertions(+), 2 deletions(-) diff --git a/src/fetch/client.h b/src/fetch/client.h index 524efa2a..e39e39b3 100644 --- a/src/fetch/client.h +++ b/src/fetch/client.h @@ -1,5 +1,12 @@ bool check_hit_no_border(Client *c) { bool hit_no_border = false; + + if (!c->mon) + return false; + + if (c->tags <= 0) + return false; + if (!render_border) { hit_no_border = true; } diff --git a/src/fetch/monitor.h b/src/fetch/monitor.h index d2b4fe62..6144ee40 100644 --- a/src/fetch/monitor.h +++ b/src/fetch/monitor.h @@ -54,7 +54,7 @@ uint32_t get_tags_first_tag_num(uint32_t source_tags) { tag = 0; if (!source_tags) { - return selmon->pertag->curtag; + return 0; } for (i = 0; !(tag & 1) && source_tags != 0 && i < LENGTH(tags); i++) { diff --git a/src/mango.c b/src/mango.c index ccba268c..0ae7d3d9 100644 --- a/src/mango.c +++ b/src/mango.c @@ -6389,7 +6389,8 @@ void updatemons(struct wl_listener *listener, void *data) { c->geom.x += mon_pos_offsetx; c->geom.y += mon_pos_offsety; c->float_geom = c->geom; - resize(c, c->geom, 1); + if (VISIBLEON(c, m)) + resize(c, c->geom, 1); } // restore window to old monitor