all repos — openbox @ 027dbd1c2032ea29f291d2e710f5743cf6fda22a

openbox fork - make it a bit more like ryudo

watch for transient == ~0ul
Dana Jansens danakj@orodu.net
commit

027dbd1c2032ea29f291d2e710f5743cf6fda22a

parent

f3a54e41a0e220cf42e717ebae0b5fe8eb2a614c

1 files changed, 4 insertions(+), 2 deletions(-)

jump to
M src/Window.ccsrc/Window.cc

@@ -1420,7 +1420,8 @@

// Check for a circular transient state: this can lock up Blackbox // when it tries to find the non-transient window for a transient. BlackboxWindow *w = this; - while(w->client.transient_for) { + while(w->client.transient_for && + w->client.transient_for != (BlackboxWindow *) ~0ul) { if(w->client.transient_for == this) { client.transient_for = (BlackboxWindow*) 0; break;

@@ -1428,7 +1429,8 @@ }

w = w->client.transient_for; } - if (client.transient_for) { + if (client.transient_for && + client.transient_for != (BlackboxWindow *) ~0ul) { // register ourselves with our new transient_for client.transient_for->client.transientList.push_back(this); flags.stuck = client.transient_for->flags.stuck;