TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Jonathan de Boyne Pollard
from: Mike Bilow
date: 1995-09-03 18:08:14
subject: tidbits

Jonathan de Boyne Pollard wrote in a message to Mike Bilow:

  > The pointer is probably valid, pointing at an deinitialized 
  > FILE struct containing an invalid file handle.  Attempting to 
  > write to such a stream would have undefined consequences, but 
  > might not cause any exception.

 JdBP>   Output via fprintf usually employs buffering (even for
 JdBP> unbuffered   streams many ..printf() implementations turn on
 JdBP> internal buffering for   the duration of the call) which may
 JdBP> well cause exceptions if the FILE   has been fclose()d (and
 JdBP> the buffers thus deallocated).

 JdBP>   I haven't seen anyone disagreeing with the general
 JdBP> consensus that the   original code (that wrote to a FILE
 JdBP> after it was fclose()d) was   erroneous and in need of
 JdBP> fixing, though.  (-:

No, I don't want to be misinterpreted as endorsing that kind of
programming.  I was merely speculating on how code containing this
egregious a bug could be executed without an exception being trapped by the
operating system.  Since the original writer seemed to feel that the
operating system was at fault for its failure to issue an exception, I
wanted to explain that the actual behavior of the code was undefined and
might or might not throw an exception depending upon the random contents of
memory.
 
-- Mike


---
* Origin: N1BEE BBS +1 401 944 8498 V.34/V.FC/V.32bis/HST16.8 (1:323/107)
SEEN-BY: 105/42 620/243 711/401 409 410 413 430 807 808 809 934 955 712/407
SEEN-BY: 712/515 628 704 713/888 800/1 7877/2809
@PATH: 323/107 150 3615/50 396/1 270/101 105/103 42 712/515 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.