From f100306fa18fa53178f59d1114e6eedfa37abc30 Mon Sep 17 00:00:00 2001 From: jb Date: Sat, 24 Jan 2015 21:52:34 +0000 Subject: PR libfortran/64770 Segfault when trying to open existing file with status="new". libgfortran ChangeLog: 2015-01-24 Janne Blomqvist PR libfortran/64770 * io/unit.c (filename_from_unit): Check that u->filename != NULL before calling strdup. testsuite ChangeLog: 2015-01-24 Janne Blomqvist PR libfortran/64770 * gfortran.dg/open_new_segv.f90: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@220086 138bc75d-0d04-0410-961f-82ee72b054a4 --- libgfortran/ChangeLog | 6 ++++++ libgfortran/io/unit.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) (limited to 'libgfortran') diff --git a/libgfortran/ChangeLog b/libgfortran/ChangeLog index 04f85c7c46c..e228a677105 100644 --- a/libgfortran/ChangeLog +++ b/libgfortran/ChangeLog @@ -1,3 +1,9 @@ +2015-01-24 Janne Blomqvist + + PR libfortran/64770 + * io/unit.c (filename_from_unit): Check that u->filename != NULL + before calling strdup. + 2015-01-22 Jerry DeLisle PR libgfortran/61933 diff --git a/libgfortran/io/unit.c b/libgfortran/io/unit.c index e168d328665..687f5076a5b 100644 --- a/libgfortran/io/unit.c +++ b/libgfortran/io/unit.c @@ -829,7 +829,7 @@ filename_from_unit (int n) } /* Get the filename. */ - if (u != NULL) + if (u != NULL && u->filename != NULL) return strdup (u->filename); else return (char *) NULL; -- cgit v1.2.3