[PD] old process still running
günter geiger
geiger at xdv.org
Fri Nov 11 17:11:51 CET 2005
.. and forgot the attachment
Guenter
On Fri, 11 Nov 2005, günter geiger wrote:
>
>
> I haven't tried shell on OSX yet, attached is a patch that might fix the
> problem. Apply with
>
> patch < shell_osx.patch
>
> Let me know if it helps (or not).
>
> Cheers,
>
> Guenter
>
>
> On Fri, 11 Nov 2005, Ed Kelly wrote:
>
> > Hi list,
> >
> > I'm still having problems with the shell object,
> > the right outlet is supposed to bang when the shell
> > has achieved it's task, but every time I use that to
> > initiate another task (with a [bang( -- [del 100] in
> > between) I get "old process still running" and the
> > task remains undone. All I want to do is create a
> > series of folders within a folder!
> >
> > Ed
> >
> > PS, I'm still having problems with my
> > email...apologies to the list, but every time I
> > forward one from the list, to myself, it's going to
> > the list instead! Yahoo! - ya boo. I'll copy and paste
> > in future!
> >
> > ->
> > ->
> > -->
> > --->
> > ----->
> > -------->
> > -------------> r3search + praktik EK5perimenz
> >
> >
> >
> > ___________________________________________________________
> > Yahoo! Model Search 2005 - Find the next catwalk superstars - http://uk.news.yahoo.com/hot/model-search/
> >
> > _______________________________________________
> > PD-list at iem.at mailing list
> > UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
> >
>
> _______________________________________________
> PD-list at iem.at mailing list
> UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
>
-------------- next part --------------
--- shell.c.old 2005-11-11 16:47:30.000000000 +0100
+++ shell.c 2005-11-11 16:48:20.000000000 +0100
@@ -76,12 +76,9 @@
int ret;
int status;
ret = waitpid(x->pid,&status,WNOHANG);
- if (ret == x->pid) {
+ if (ret == x->pid && WIFEXITED(status)) {
shell_cleanup(x);
- if (WIFEXITED(status)) {
- outlet_float(x->x_done,WEXITSTATUS(status));
- }
- else outlet_float(x->x_done,0);
+ outlet_float(x->x_done,WEXITSTATUS(status));
}
else {
if (x->x_del < 100) x->x_del+=2; /* increment poll times */
More information about the Pd-list
mailing list