diff --git a/gnome/ChangeLog b/gnome/ChangeLog index ac050b833..9688b5889 100644 --- a/gnome/ChangeLog +++ b/gnome/ChangeLog @@ -1,3 +1,8 @@ +1999-09-09 Federico Mena Quintero + + * gcorba.c (WindowFactory_close_invalid_windows): Doh. Walk the + list properly, since it may change as we delete windows. + 1999-09-09 Federico Mena Quintero * gmc-client.c: New file. This is a small program to which you diff --git a/gnome/gcorba.c b/gnome/gcorba.c index 88302a750..6ac09daab 100644 --- a/gnome/gcorba.c +++ b/gnome/gcorba.c @@ -276,8 +276,10 @@ WindowFactory_close_invalid_windows (PortableServer_Servant servant, * fails, then we destroy the panel's window. */ - for (l = containers; l; l = l->next) { + l = containers; + while (l) { pc = l->data; + l = l->next; if (mc_chdir (pc->panel->cwd) != 0) gnome_close_panel (GTK_WIDGET (pc->panel->xwindow), pc->panel);