fix to games stayed unzipped
This commit is contained in:
13
src/file.c
13
src/file.c
@@ -63,7 +63,7 @@ doret:
|
||||
return tmp;
|
||||
}
|
||||
|
||||
static MEMWRAP *MakeMemWrapBuffer(void *tz, int type, uint8 *buffer, size_t bufsize)
|
||||
static MEMWRAP *MakeMemWrapBuffer(const char *tz, int type, uint8 *buffer, size_t bufsize)
|
||||
{
|
||||
MEMWRAP *tmp = (MEMWRAP*)FCEU_malloc(sizeof(MEMWRAP));
|
||||
|
||||
@@ -81,6 +81,12 @@ FCEUFILE * FCEU_fopen(const char *path, const char *ipsfn,
|
||||
char *mode, char *ext, uint8 *buffer, size_t bufsize)
|
||||
{
|
||||
FCEUFILE *fceufp = (FCEUFILE*)malloc(sizeof(FCEUFILE));
|
||||
|
||||
fceufp->type = 0;
|
||||
if (buffer)
|
||||
fceufp->fp = MakeMemWrapBuffer(path, 0, buffer, bufsize);
|
||||
else
|
||||
{
|
||||
void *t = fopen(path, mode);
|
||||
|
||||
if (!t)
|
||||
@@ -90,11 +96,8 @@ FCEUFILE * FCEU_fopen(const char *path, const char *ipsfn,
|
||||
}
|
||||
|
||||
fseek((FILE*)t, 0, SEEK_SET);
|
||||
fceufp->type = 0;
|
||||
if (buffer)
|
||||
fceufp->fp = MakeMemWrapBuffer(t, 0, buffer, bufsize);
|
||||
else
|
||||
fceufp->fp = MakeMemWrap(t, 0);
|
||||
}
|
||||
return fceufp;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user