Thanks. I will write SIGSEGV handler in the C program and see how it works.
Bruce Atherton wrote: > > It is entirely possible that the output never reaches Ant. The standard > C library is typically set up to buffer data on the standard file > handles, for efficiency purposes. > > To get around this, you could: > > 1) do a flush() on the stdout and stderr streams before the > segmentation fault (assuming you know where it is). > 2) replace the standard file handles with ones that do not buffer > anything. > 3) you might be able to write a signal handler for SIGSEGV to do the > flush(), I'm not sure. > > If this is a C program that you can't alter the code for, then the only > place you might be able to find what was output is somewhere inside the > core dump, which isn't terribly practical. > > As for detecting the segmentation fault, you could always look for the > core dump file, assuming the system generates one. > > venki wrote: >> Hi, >> I am using org.apache.tools.ant.taskdefs.Execute combined with >> org.apache.tools.ant.taskdefs.PumpStreamHandler to execute an external C >> program. When the external C program segfaults, I am not able to to see >> any >> output that came from the external C program before it segfaults. Also, I >> am >> not able to see the 'segmentation fault' message in the stream output. >> Any >> help to solve this would be useful. >> >> Thanks. >> >> Venki >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > -- View this message in context: http://www.nabble.com/org.apache.tools.ant.taskdefs.Execute-and-segafult-tf4431366.html#a12663408 Sent from the Ant - Users mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]