Fish for memory leaks in sega saturn SSF files.

CQTexperiment
vspader 2009-03-01 11:15:19 -08:00
parent 40c723df79
commit 1dd18cf856
3 changed files with 15 additions and 1 deletions

View File

@ -144,6 +144,7 @@ int32 ssf_start(uint8 *buffer, uint32 length)
// Dispose the corlett structure for the lib - we don't use it
free(lib);
free(lib_decoded);
}
}
@ -271,6 +272,9 @@ int32 ssf_gen(int16 *buffer, uint32 samples)
int32 ssf_stop(void)
{
scsp_stop();
free(c);
return AO_SUCCESS;
}

View File

@ -1169,6 +1169,14 @@ void *scsp_start(const void *config)
return SCSP;
}
void scsp_stop(void)
{
free(AllocedSCSP->buffertmpl);
free(AllocedSCSP->buffertmpr);
free(AllocedSCSP);
}
void SCSP_set_ram_base(int which, void *base)
{

View File

@ -20,11 +20,13 @@ struct SCSPinterface
{
int num;
void *region[MAX_SCSP];
int mixing_level[MAX_SCSP]; /* volume */
int mixing_level[MAX_SCSP]; /* volume */
void (*irq_callback[MAX_SCSP])(int state); /* irq callback */
};
void *scsp_start(const void *config);
void scsp_stop(void);
void SCSP_Update(void *param, INT16 **inputs, INT16 **buf, int samples);
#define READ16_HANDLER(name) data16_t name(offs_t offset, data16_t mem_mask)