PR# 18040 Unix implementation of PROCESS propagating spurious errors

Problem Report Summary
Submitter: finnianr
Category: Other
Priority: Low
Date: 2011/12/06
Class: Bug
Severity: Non-critical
Number: 18040
Release: EiffelStudio 7.0.8.7451 GPL
Confidential: No
Status: Open
Responsible:
Environment: Ubuntu Linux x86_64
Synopsis: Unix implementation of PROCESS propagating spurious errors

Description
if you use 'redirect_error_to_agent' to assign an error handler to a process, the routine receives calls which are not the result of any error.

This does not occur in the Windows implementation of the same program. 

It is not a serious bug as it is possible to distinguish real errors from spurious ones by checking if the passed STRING buffer is empty.


To Reproduce
1 Create a PROCESS calling /usr/bin/find with legitimate arguments.
2 assign a buffer of size 40.
3 assign an output agent
4 assign an error output agent
5 launch the process

Both assigned agents will be alternately called. The error routine will be passed an empty buffer in all calls.

Compare to Windows implementation calling c:\windows\system32\cmd.exe /C dir ...
which behaves correctly.
Problem Report Interactions