|
Jochen,
> If possible could you mail me your version if possible
I just checked again, and found that though the version I had worked in the
sense that it passed its tests, they didn't require redirection of stdio
streams, and that was broken because of the missing #handle: method.
Anyway, going back to Bob's site for the latest version, it seems that there
are only two small problems. One is that the ExternalProcess package defined
STILL_ACTIVE in the post-install script rather than the pre-install (which is
too late). The other is that InheritableFile depends on there being an
implementation of #handle: in its superclass -- and that has gone away.
You can move the script and reload the package, or just resave the
ExternalProcess>>getExitCodes method, which will now compile OK since
STILL_ACTIVE is defined. Just ignore warnings about #hThread and #hProcess
being undefined (it's a result of the DNU-style accessors used by
ExternalStructures and is misleading).
Adding:
========================
handle: anExternalHandle
#CUadded.
handle := anExternalHandle.
========================
to InheritableFile fixes the missing method. It's probably not the ideal fix,
but it seems sufficient for the short term.
With that, the tests pass, and my own small uses of ExternalProcess work fine.
I'll send you my old version of Bob's stuff if you like, but since his current
version (with the above added) works appears to work at least as well as the
old version, /and/ has some useful new features, you may not need it.
-- chris
|