From: Orestis Floros Date: Fri, 22 Sep 2017 16:22:48 +0000 (+0300) Subject: Add con_exists function X-Git-Tag: 4.15~69^2~1 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=be9a2bb7f8ffac4c360b272cd5717bc158c0bb74;p=i3%2Fi3 Add con_exists function Checks the all_cons queue and returns true if a given con is found. --- diff --git a/include/con.h b/include/con.h index 69292411..b88ea354 100644 --- a/include/con.h +++ b/include/con.h @@ -165,6 +165,13 @@ Con *con_by_window_id(xcb_window_t window); */ Con *con_by_con_id(long target); +/** + * Returns true if the given container (still) exists. + * This can be used, e.g., to make sure a container hasn't been closed in the meantime. + * + */ +bool con_exists(Con *con); + /** * Returns the container with the given frame ID or NULL if no such container * exists. diff --git a/src/con.c b/src/con.c index 29a326e7..e0901443 100644 --- a/src/con.c +++ b/src/con.c @@ -597,6 +597,15 @@ Con *con_by_con_id(long target) { return NULL; } +/* + * Returns true if the given container (still) exists. + * This can be used, e.g., to make sure a container hasn't been closed in the meantime. + * + */ +bool con_exists(Con *con) { + return con_by_con_id((long)con) != NULL; +} + /* * Returns the container with the given frame ID or NULL if no such container * exists.