fix: crash in some crossmon dispatch

This commit is contained in:
DreamMaoMao
2025-11-12 23:10:09 +08:00
parent 7ed12cf921
commit ade00f88f0

View File

@@ -971,7 +971,7 @@ int tag(const Arg *arg) {
} }
int tagmon(const Arg *arg) { int tagmon(const Arg *arg) {
Monitor *m = NULL; Monitor *m = NULL,*cm = NULL;
Client *c = focustop(selmon); Client *c = focustop(selmon);
if (!c) if (!c)
@@ -980,11 +980,12 @@ int tagmon(const Arg *arg) {
if (arg->i != UNDIR) { if (arg->i != UNDIR) {
m = dirtomon(arg->i); m = dirtomon(arg->i);
} else if (arg->v) { } else if (arg->v) {
wl_list_for_each(m, &mons, link) { wl_list_for_each(cm, &mons, link) {
if (!m->wlr_output->enabled) { if (!cm->wlr_output->enabled) {
continue; continue;
} }
if (regex_match(arg->v, m->wlr_output->name)) { if (regex_match(arg->v, cm->wlr_output->name)) {
m = cm;
break; break;
} }
} }