On Tue, Oct 19, 2004 at 04:47:59PM -0400, Parv wrote: > in message <[EMAIL PROTECTED]>, > wrote fvwm-w thusly... > > > > On Sat, Oct 16, 2004 at 01:27:56AM -0400, Parv wrote: > > > Fvwm 2.5.1[02] gets stuck sometimes, always while raising or deiconifying > > > a > > > Mozilla window via WindowList command. > > > > > > When fvwm gets stuck... > > > > > > - CPU usage reaches near 100% > > > - Mouse pointer remains in the set "CursorStyle MENU" > > > > If a transient window is iconified by its parent window and then > > loses the special relationship, for example because the parent is > > closed, a loop in the DeIconify() function never exits. > > > > I have committed a patch to CVS for 2.5.13 > > I have generated the patch (from 2.5.12 & CVS via ftp) below for > icons.c. Is this sufficient?
Yes. Does it work? > (Mind the embedded tabs in the patch) > > --- fvwm/icons.c.orig Wed Mar 17 09:42:54 2004 > +++ fvwm/icons.c Tue Oct 19 16:13:55 2004 > @@ -2251,7 +2251,7 @@ > */ > void DeIconify(FvwmWindow *fw) > { > - FvwmWindow *t,*tmp; > + FvwmWindow *t, *tmp, *ofw; > FvwmWindow *sf = get_focus_window(); > rectangle icon_rect; > XWindowAttributes winattrs = {0}; > @@ -2276,15 +2276,18 @@ > SET_ICONIFY_AFTER_MAP(fw, 0); > return; > } > - while (IS_ICONIFIED_BY_PARENT(fw)) > + for (ofw = NULL; fw != ofw && IS_ICONIFIED_BY_PARENT(fw); ) > { > - for (t = Scr.FvwmRoot.next; t != NULL; t = t->next) > + t = get_transientfor_fvwmwindow(fw); > + if (t != NULL) > { > - if (t != fw && FW_W_TRANSIENTFOR(fw) == FW_W(t)) > - { > - fw = t; > - } > + ofw = fw; > + fw = t; > } > + } > + if (IS_ICONIFIED_BY_PARENT(fw)) > + { > + SET_ICONIFIED_BY_PARENT(fw, 0); > } > > /* AS dje RaiseWindow(fw); */ Ciao Dominik ^_^ ^_^ -- Dominik Vogt, [EMAIL PROTECTED]
pgpEaeOi9vsJX.pgp
Description: PGP signature