On Sat, Nov 26, 2011 at 07:40:42AM -0800, Sean P. DeNigris wrote:
Sean P. DeNigris wrote
I got a little further. #updateErrorPipelineStream helped to get the error messages as they came.
Dave, based on your answers, this seems like it should not be necessary, yet without it #errorUpToEnd returned an empty string even though there was output available. Is there an internal flush that's not getting done?
PipeableOSProcess is designed to be used in a pipeline of connected process proxies (or other types of PipeJunction). In that context, The standard output of each PipeJunction is connected to the standard input of the next, and the error output (if any) from each PipeJunction needs to go somewhere. The errorPipelineStream is shared by multiple process proxies in the pipeline, and provides a place to accumulate the error output from any of the process proxies. The updates to this accumulator stream are triggered by change notifications that happen as data becomes available on the error output streams of each process proxy.
HTH, Dave