From: Tony Crisci Date: Thu, 23 Apr 2015 22:21:15 +0000 (-0400) Subject: Check if output is disabled in handle_output() X-Git-Tag: 4.10.3~7 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=e71c304444dd3070877887d2bb5407cd64033946;p=i3%2Fi3 Check if output is disabled in handle_output() Check if the `connection` of the randr output is XCB_RANDR_CONNECTION_DISONNECTED and disable the output if it is. This fixes an issue where the output would not be disabled if the output was physically unplugged from the machine. --- diff --git a/src/randr.c b/src/randr.c index a4a0f6fd..9549c9d5 100644 --- a/src/randr.c +++ b/src/randr.c @@ -555,6 +555,12 @@ static void handle_output(xcb_connection_t *conn, xcb_randr_output_t id, return; } + if (output->connection == XCB_RANDR_CONNECTION_DISCONNECTED) { + DLOG("Disabling output %s: it is disconnected\n", new->name); + new->to_be_disabled = true; + return; + } + bool updated = update_if_necessary(&(new->rect.x), crtc->x) | update_if_necessary(&(new->rect.y), crtc->y) | update_if_necessary(&(new->rect.width), crtc->width) |