#39 Infinite loop when writing to stderr fails

HEAD
accepted
nobody
1
2014-09-23
2013-04-08
Jeroen Demeyer
No

When writing to stderr fails, ECL wants to write an error message to stderr to say that this write failed. This is obviously an infinite loop. This can occur in real-life situations when stderr is a log file on a full (ENOSPC) file system. Example shell session:

$ echo syntax error | ./ecl 2>/dev/full
ECL (Embeddable Common-Lisp) 13.4.1 (git:6a39823a1eb313e9c316b64ece15911e8b2bf472)
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.  
Top level in: #<process TOP-LEVEL>.
> Segmentation fault

The simplest solution (see patch) is ignoring errors when writing to stderr.

1 Attachments

Discussion

  • Arto Bendiken
    Arto Bendiken
    2014-09-23

    I've confirmed that the behavior remains as described on Git HEAD as of revision 898a57818bea33119b1f5c53457f88e79f680fd3.

     
  • Arto Bendiken
    Arto Bendiken
    2014-09-23

    • labels: --> standard-error
    • status: open --> accepted
    • Group: Stable_release --> HEAD
     


Anonymous


Cancel   Add attachments