patch 8.2.0523: loops are repeated
Problem: Loops are repeated.
Solution: Use FOR_ALL_ macros. (Yegappan Lakshmanan, closes #5882)
diff --git a/src/gui_athena.c b/src/gui_athena.c
index 99c7a67..6a64de5 100644
--- a/src/gui_athena.c
+++ b/src/gui_athena.c
@@ -954,7 +954,7 @@
vimmenu_T *mp;
int max_height = 9999;
- for (mp = root_menu; mp != NULL; mp = mp->next)
+ FOR_ALL_MENUS(mp)
{
if (menu_is_menubar(mp->dname))
{
@@ -1280,7 +1280,7 @@
vimmenu_T *toolbar;
vimmenu_T *cur;
- for (toolbar = root_menu; toolbar; toolbar = toolbar->next)
+ FOR_ALL_MENUS(toolbar)
if (menu_is_toolbar(toolbar->dname))
break;
// Assumption: toolbar is NULL if there is no toolbar,
@@ -1632,7 +1632,7 @@
{
vimmenu_T *i;
- for (i = menu->parent->children; i != NULL; i = i->next)
+ FOR_ALL_CHILD_MENUS(menu->parent, i)
{
if (i->submenu_id != NULL && XtIsManaged(i->submenu_id))
XtPopdown(i->submenu_id);