On Tue, Jan 01, 2008 at 04:58:44PM -0500, Emilie Ann Phillips wrote:
> On Jan 1, 2008 4:49 PM, Attila Nemeth <[EMAIL PROTECTED]> wrote:
> > DestroyFunc HelperFnc
> > AddToFunc HelperFnc
> > + I ThisWindow Exec exec echo $[w.y]:$[w.x]:$[w.id] >>~/.fvwm/wlist.txt
> >
> > DestroyFunc WSelect
> > AddToFunc WSelect
> > + I Exec exec rm -f ~/.fvwm/wlist.txt ; touch ~/.fvwm/wlist.txt
> > + I All (!Iconic, CurrentPage, AcceptsFocus) HelperFnc
> > + I PipeRead "~/.fvwm/SelectWindow.sh"
> >
> > Now, all this is not relaible. Most of the time it works, but somtimes
> > the wlist.txt file ends up empty or missing some windows. Like if the
> > PipeRead kicked in too early. Is it possible that the lines in an fvwm
> > function (WSelect in this case) are NOT executed sequentially?
> 
> If you look at the documentation for Exec
> (http://fvwm.org/documentation/manpages/unstable/fvwm.php#lbBW) it
> specifies that Exec doesn't wait for the command to complete. So what
> is probably happening is that you are starting to run SelectWindow.sh
> before you finish writing to wlist.txt

Yes.  If you want fvwm to execute the command synchronously, use
PipeRead instead of Exec and make sure that your script does not
write to stdout.

Ciao

Dominik ^_^  ^_^

-- 
Dominik Vogt

Reply via email to