SIGSEGV on fclose.

From: Bjarne Blichfeldt (bbl@dk.damgaard.com)
Date: Thu Jul 13 2000 - 03:48:11 EST


On linux I get a SIGSEGV, Segmentation fault if I close a nonopen file.

On unix platforms, this is either simply ignored or an appropiate
errormessage is returned, and according to the linux manualpage fclose
on linux should return EBADF.

I have testet the following example on AIX 4.3, Solaris 7, FreeBSD 4.0,
TRU64, HPUX 10.20, SCO ODT5, linux kernel 2.2.15 and linux kernel
2.2.13.

in case you wonder: the problem arises from a program that closes a
file twice because it does not know that the file is allready closed.

Regards,
Bjarne

/*--------------------------------------------*/
#include <stdio.h>

FILE *new;

main () {

   fclose (new); /* <---- SIGSEGV on linux only */
}
/*--------------------------------------------*/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Jul 15 2000 - 21:00:16 EST