Don’t die, but ELOG and fallback when the pointer cannot be queried (Thanks Niklas)
This commit is contained in:
parent
0f077f1dbf
commit
f15559eb1f
11
src/main.c
11
src/main.c
|
@ -430,11 +430,13 @@ int main(int argc, char *argv[]) {
|
|||
}
|
||||
|
||||
xcb_query_pointer_reply_t *pointerreply;
|
||||
if (!(pointerreply = xcb_query_pointer_reply(conn, pointercookie, NULL)))
|
||||
die("Could not query pointer position\n");
|
||||
|
||||
Output *output = NULL;
|
||||
if (!(pointerreply = xcb_query_pointer_reply(conn, pointercookie, NULL))) {
|
||||
ELOG("Could not query pointer position, using first screen\n");
|
||||
output = get_first_output();
|
||||
} else {
|
||||
DLOG("Pointer at %d, %d\n", pointerreply->root_x, pointerreply->root_y);
|
||||
Output *output = get_output_containing(pointerreply->root_x, pointerreply->root_y);
|
||||
output = get_output_containing(pointerreply->root_x, pointerreply->root_y);
|
||||
if (!output) {
|
||||
ELOG("ERROR: No screen at (%d, %d), starting on the first screen\n",
|
||||
pointerreply->root_x, pointerreply->root_y);
|
||||
|
@ -442,6 +444,7 @@ int main(int argc, char *argv[]) {
|
|||
}
|
||||
|
||||
con_focus(con_descend_focused(output_get_content(output->con)));
|
||||
}
|
||||
|
||||
tree_render();
|
||||
|
||||
|
|
Loading…
Reference in New Issue