diff --git a/src/physfs.c b/src/physfs.c index eec40b2..1e64b2b 100644 --- a/src/physfs.c +++ b/src/physfs.c @@ -2731,13 +2731,15 @@ PHYSFS_File *PHYSFS_openRead(const char *_fname) io->destroy(io); PHYSFS_setErrorCode(PHYSFS_ERR_OUT_OF_MEMORY); } /* if */ - - memset(fh, '\0', sizeof (FileHandle)); - fh->io = io; - fh->forReading = 1; - fh->dirHandle = i; - fh->next = openReadList; - openReadList = fh; + else + { + memset(fh, '\0', sizeof (FileHandle)); + fh->io = io; + fh->forReading = 1; + fh->dirHandle = i; + fh->next = openReadList; + openReadList = fh; + } /* else */ } /* if */ } /* if */