aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorXavier Del Campo Romero <xavi.dcr@tutanota.com>2022-07-02 00:49:33 +0200
committerXavier Del Campo Romero <xavi.dcr@tutanota.com>2022-07-02 00:49:36 +0200
commit033ed5fb947d817da87dc11d95fc60b147791de1 (patch)
tree4fb98f16bf658899be3b1e7ad0a50dc36e416caa /src
parentec9f41f1abf741bcb14ff14217d9686528c6eb48 (diff)
downloadrts-033ed5fb947d817da87dc11d95fc60b147791de1.tar.gz
gui.c: fix wrong logic on gui_coords
The older logic would iterate for all parents, where each parent would again iterate for all of its parents, until no more parents found. This is however not needed, since only inspecting the closest parent will already cause the (recursive) algorithm to iterate for all parents.
Diffstat (limited to 'src')
-rw-r--r--src/gui/src/gui.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/gui/src/gui.c b/src/gui/src/gui.c
index 99701f1..329bc2d 100644
--- a/src/gui/src/gui.c
+++ b/src/gui/src/gui.c
@@ -34,7 +34,9 @@ void gui_coords(const struct gui_common *const g, short *const x,
*x = g->x;
*y = g->y;
- for (const struct gui_common *p = g->parent; p; p = p->parent)
+ const struct gui_common *p = g->parent;
+
+ if (p)
{
short px = p->x, py = p->y;