notaz.gp2x.de
/
fceu.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
SIG_IGN->SIG_DFL, fixes usb storage mode
[fceu.git]
/
state.c
diff --git
a/state.c
b/state.c
index
c50223d
..
c349cff
100644
(file)
--- a/
state.c
+++ b/
state.c
@@
-289,6
+289,7
@@
extern int geniestage;
void SaveState(void)
{
FILE *st=NULL;
void SaveState(void)
{
FILE *st=NULL;
+ char *fname;
TempAddrT=TempAddr;
RefreshAddrT=RefreshAddr;
TempAddrT=TempAddr;
RefreshAddrT=RefreshAddr;
@@
-299,7
+300,9
@@
void SaveState(void)
return;
}
return;
}
- st=fopen(FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0),"wb");
+ fname = FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0);
+ st=fopen(fname,"wb");
+ free(fname);
if(st!=NULL)
{
if(st!=NULL)
{
@@
-386,6
+389,7
@@
int FCEUSS_LoadFP(FILE *st, int make_backup)
void LoadState(void)
{
FILE *st=NULL;
void LoadState(void)
{
FILE *st=NULL;
+ char *fname;
if(geniestage==1)
{
if(geniestage==1)
{
@@
-393,15
+397,24
@@
void LoadState(void)
return;
}
return;
}
- st=fopen(FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0),"rb");
+ fname = FCEU_MakeFName(FCEUMKF_STATE,CurrentState,0);
+ st=fopen(fname,"rb");
+ free(fname);
+
if (st)
{
FCEUSS_LoadFP(st, 0);
fclose(st);
}
if (st)
{
FCEUSS_LoadFP(st, 0);
fclose(st);
}
+ else
+ {
+ FCEU_DispMessage("State %d load error (no file).",CurrentState);
+ SaveStateStatus[CurrentState]=0;
+ }
}
char SaveStateStatus[10];
}
char SaveStateStatus[10];
+#if 0 // leaks memory
void CheckStates(void)
{
FILE *st=NULL;
void CheckStates(void)
{
FILE *st=NULL;
@@
-420,6
+433,7
@@
void CheckStates(void)
SaveStateStatus[ssel]=0;
}
}
SaveStateStatus[ssel]=0;
}
}
+#endif
void SaveStateRefresh(void)
{
void SaveStateRefresh(void)
{