From ecd95f308a67ff88ae69a7ddb003ae8dcf70c8d6 Mon Sep 17 00:00:00 2001
From: Ozkan Sezer <[EMAIL REDACTED]>
Date: Wed, 17 Mar 2021 23:56:50 +0300
Subject: [PATCH] timidity: killed safe_malloc().
---
src/codecs/timidity/common.c | 40 ++++++++++------------------------
src/codecs/timidity/common.h | 4 +---
src/codecs/timidity/instrum.c | 8 +++----
src/codecs/timidity/readmidi.c | 9 ++++----
src/codecs/timidity/resample.c | 2 +-
src/codecs/timidity/timidity.c | 39 ++++++++++++---------------------
6 files changed, 35 insertions(+), 67 deletions(-)
diff --git a/src/codecs/timidity/common.c b/src/codecs/timidity/common.c
index 96f9f39..527787f 100644
--- a/src/codecs/timidity/common.c
+++ b/src/codecs/timidity/common.c
@@ -1,5 +1,4 @@
/*
-
TiMidity -- Experimental MIDI to WAVE converter
Copyright (C) 1995 Tuukka Toivonen <toivonen@clinet.fi>
@@ -37,16 +36,15 @@ SDL_RWops *open_file(const char *name)
{
SDL_RWops *rw;
- if (!name || !(*name))
- {
+ if (!name || !(*name)) {
SNDDBG(("Attempted to open nameless file.\n"));
- return 0;
- }
+ return NULL;
+ }
/* First try the given name */
SNDDBG(("Trying to open %s\n", name));
- if ((rw = SDL_RWFromFile(name, "rb")))
+ if ((rw = SDL_RWFromFile(name, "rb")) != NULL)
return rw;
if (!is_abspath(name))
@@ -56,18 +54,15 @@ SDL_RWops *open_file(const char *name)
char *p;
size_t l;
- while (plp) /* Try along the path then */
- {
+ while (plp) { /* Try along the path then */
*current_filename = 0;
p = current_filename;
l = SDL_strlen(plp->path);
if(l >= sizeof(current_filename) - 3) l = 0;
- if(l)
- {
+ if(l) {
SDL_memcpy(current_filename, plp->path, l);
p += l;
- if(!is_dirsep(p[-1]))
- {
+ if(!is_dirsep(p[-1])) {
*p++ = CHAR_DIRSEP;
l++;
}
@@ -79,34 +74,21 @@ SDL_RWops *open_file(const char *name)
plp = plp->next;
}
}
-
+
/* Nothing could be opened. */
SNDDBG(("Could not open %s\n", name));
- return 0;
-}
-
-/* This'll allocate memory or die. */
-void *safe_malloc(size_t count)
-{
- void *p;
-
- p = SDL_malloc(count);
- if (p == NULL) {
- SNDDBG(("Sorry. Couldn't malloc %d bytes.\n", count));
- }
-
- return p;
+ return NULL;
}
/* This adds a directory to the path list */
void add_to_pathlist(const char *s, size_t l)
{
- PathList *plp = safe_malloc(sizeof(PathList));
+ PathList *plp = SDL_malloc(sizeof(PathList));
if (plp == NULL)
return;
- plp->path = safe_malloc(l + 1);
+ plp->path = SDL_malloc(l + 1);
if (plp->path == NULL) {
SDL_free (plp);
return;
diff --git a/src/codecs/timidity/common.h b/src/codecs/timidity/common.h
index 0b9b97b..f6faa9f 100644
--- a/src/codecs/timidity/common.h
+++ b/src/codecs/timidity/common.h
@@ -1,15 +1,13 @@
/*
-
TiMidity -- Experimental MIDI to WAVE converter
Copyright (C) 1995 Tuukka Toivonen <toivonen@clinet.fi>
This program is free software; you can redistribute it and/or modify
it under the terms of the Perl Artistic License, available in COPYING.
- common.h
+ common.h
*/
extern SDL_RWops *open_file(const char *name);
extern void add_to_pathlist(const char *s, size_t len);
-extern void *safe_malloc(size_t count);
extern void free_pathlist(void);
diff --git a/src/codecs/timidity/instrum.c b/src/codecs/timidity/instrum.c
index a69b9d4..1c58379 100644
--- a/src/codecs/timidity/instrum.c
+++ b/src/codecs/timidity/instrum.c
@@ -204,9 +204,9 @@ static Instrument *load_instrument(MidiSong *song, char *name, int percussion,
return 0;
}
- ip=safe_malloc(sizeof(Instrument));
+ ip=SDL_malloc(sizeof(Instrument));
ip->samples = tmp[198];
- ip->sample = safe_malloc(sizeof(Sample) * ip->samples);
+ ip->sample = SDL_malloc(sizeof(Sample) * ip->samples);
for (i=0; i<ip->samples; i++)
{
Uint8 fractions;
@@ -367,7 +367,7 @@ static Instrument *load_instrument(MidiSong *song, char *name, int percussion,
}
/* Then read the sample data */
- sp->data = (sample_t *) safe_malloc(sp->data_length+4);
+ sp->data = (sample_t *) SDL_malloc(sp->data_length+4);
if (1 != SDL_RWread(rw, sp->data, sp->data_length, 1))
goto fail;
@@ -379,7 +379,7 @@ static Instrument *load_instrument(MidiSong *song, char *name, int percussion,
sp->data_length *= 2;
sp->loop_start *= 2;
sp->loop_end *= 2;
- tmp16 = new16 = (Uint16 *) safe_malloc(sp->data_length+4);
+ tmp16 = new16 = (Uint16 *) SDL_malloc(sp->data_length+4);
while (k--)
*tmp16++ = (Uint16)(*cp++) << 8;
SDL_free(sp->data);
diff --git a/src/codecs/timidity/readmidi.c b/src/codecs/timidity/readmidi.c
index 34ff22f..5245c5d 100644
--- a/src/codecs/timidity/readmidi.c
+++ b/src/codecs/timidity/readmidi.c
@@ -52,7 +52,7 @@ static int dumpstring(SDL_RWops *rw, Sint32 len, Uint8 type)
static char *label[]={
"Text event: ", "Text: ", "Copyright: ", "Track name: ",
"Instrument: ", "Lyric: ", "Marker: ", "Cue point: "};
- signed char *s=safe_malloc(len+1);
+ signed char *s=SDL_malloc(len+1);
if (len != (Sint32) SDL_RWread(rw, s, 1, len))
{
SDL_free(s);
@@ -71,7 +71,7 @@ static int dumpstring(SDL_RWops *rw, Sint32 len, Uint8 type)
#endif
#define MIDIEVENT(at,t,ch,pa,pb) \
- new=safe_malloc(sizeof(MidiEventList)); \
+ new=SDL_malloc(sizeof(MidiEventList)); \
new->event.time=at; new->event.type=t; new->event.channel=ch; \
new->event.a=pa; new->event.b=pb; new->next=0;\
return new;
@@ -358,7 +358,7 @@ static MidiEvent *groom_list(MidiSong *song, Sint32 divisions,Sint32 *eventsp,
compute_sample_increment(song, tempo, divisions);
/* This may allocate a bit more than we need */
- groomed_list=lp=safe_malloc(sizeof(MidiEvent) * (song->event_count+1));
+ groomed_list=lp=SDL_malloc(sizeof(MidiEvent) * (song->event_count+1));
meep=song->evlist;
our_event_count=0;
@@ -573,8 +573,7 @@ MidiEvent *read_midi_file(MidiSong *song, Sint32 *count, Sint32 *sp)
format, tracks, divisions));
/* Put a do-nothing event first in the list for easier processing */
- song->evlist=safe_malloc(sizeof(MidiEventList));
- SDL_memset(song->evlist, 0, sizeof(MidiEventList));
+ song->evlist=SDL_calloc(1, sizeof(MidiEventList));
song->event_count++;
switch(format)
diff --git a/src/codecs/timidity/resample.c b/src/codecs/timidity/resample.c
index 9b29f0c..66b2f7c 100644
--- a/src/codecs/timidity/resample.c
+++ b/src/codecs/timidity/resample.c
@@ -558,7 +558,7 @@ void pre_resample(MidiSong *song, Sample *sp)
return;
}
- dest = newdata = (Sint16 *) safe_malloc((newlen >> (FRACTION_BITS - 1)) + 2);
+ dest = newdata = (Sint16 *) SDL_malloc((newlen >> (FRACTION_BITS - 1)) + 2);
if (!dest)
return;
diff --git a/src/codecs/timidity/timidity.c b/src/codecs/timidity/timidity.c
index 59c2073..bb5d589 100644
--- a/src/codecs/timidity/timidity.c
+++ b/src/codecs/timidity/timidity.c
@@ -246,10 +246,8 @@ static int read_config_file(const char *name)
}
if (!master_drumset[i])
{
- master_drumset[i] = safe_malloc(sizeof(ToneBank));
- SDL_memset(master_drumset[i], 0, sizeof(ToneBank));
- master_drumset[i]->tone = safe_malloc(128 * sizeof(ToneBankElement));
- SDL_memset(master_drumset[i]->tone, 0, 128 * sizeof(ToneBankElement));
+ master_drumset[i] = SDL_calloc(1, sizeof(ToneBank));
+ master_drumset[i]->tone = SDL_calloc(128, sizeof(ToneBankElement));
}
bank=master_drumset[i];
}
@@ -269,10 +267,8 @@ static int read_config_file(const char *name)
}
if (!master_tonebank[i])
{
- master_tonebank[i] = safe_malloc(sizeof(ToneBank));
- SDL_memset(master_tonebank[i], 0, sizeof(ToneBank));
- master_tonebank[i]->tone = safe_malloc(128 * sizeof(ToneBankElement));
- SDL_memset(master_tonebank[i]->tone, 0, 128 * sizeof(ToneBankElement));
+ master_tonebank[i] = SDL_calloc(1, sizeof(ToneBank));
+ master_tonebank[i]->tone = SDL_calloc(128, sizeof(ToneBankElement));
}
bank=master_tonebank[i];
}
@@ -300,7 +296,7 @@ static int read_config_file(const char *name)
if (bank->tone[i].name)
SDL_free(bank->tone[i].name);
sz = SDL_strlen(w[1])+1;
- bank->tone[i].name=safe_malloc(sz);
+ bank->tone[i].name=SDL_malloc(sz);
SDL_memcpy(bank->tone[i].name,w[1],sz);
bank->tone[i].note=bank->tone[i].amp=bank->tone[i].pan=
bank->tone[i].strip_loop=bank->tone[i].strip_envelope=
@@ -399,15 +395,11 @@ static int read_config_file(const char *name)
int Timidity_Init_NoConfig(void)
{
/* Allocate memory for the standard tonebank and drumset */
- master_tonebank[0] = safe_malloc(sizeof(ToneBank));
- SDL_memset(master_tonebank[0], 0, sizeof(ToneBank));
- master_tonebank[0]->tone = safe_malloc(128 * sizeof(ToneBankElement));
- SDL_memset(master_tonebank[0]->tone, 0, 128 * sizeof(ToneBankElement));
+ master_tonebank[0] = SDL_calloc(1, sizeof(ToneBank));
+ master_tonebank[0]->tone = SDL_calloc(128, sizeof(ToneBankElement));
- master_drumset[0] = safe_malloc(sizeof(ToneBank));
- SDL_memset(master_drumset[0], 0, sizeof(ToneBank));
- master_drumset[0]->tone = safe_malloc(128 * sizeof(ToneBankElement));
- SDL_memset(master_drumset[0]->tone, 0, 128 * sizeof(ToneBankElement));
+ master_drumset[0] = SDL_calloc(1, sizeof(ToneBank));
+ master_drumset[0]->tone = SDL_calloc(128, sizeof(ToneBankElement));
return 0;
}
@@ -444,23 +436,20 @@ MidiSong *Timidity_LoadSong(SDL_RWops *rw, SDL_AudioSpec *audio)
return NULL;
/* Allocate memory for the song */
- song = (MidiSong *)safe_malloc(sizeof(*song));
+ song = (MidiSong *)SDL_calloc(1, sizeof(*song));
if (song == NULL)
return NULL;
- SDL_memset(song, 0, sizeof(*song));
for (i = 0; i < MAXBANK; i++)
{
if (master_tonebank[i])
{
- song->tonebank[i] = safe_malloc(sizeof(ToneBank));
- SDL_memset(song->tonebank[i], 0, sizeof(ToneBank));
+ song->tonebank[i] = SDL_calloc(1, sizeof(ToneBank));
song->tonebank[i]->tone = master_tonebank[i]->tone;
}
if (master_drumset[i])
{
- song->drumset[i] = safe_malloc(sizeof(ToneBank));
- SDL_memset(song->drumset[i], 0, sizeof(ToneBank));
+ song->drumset[i] = SDL_calloc(1, sizeof(ToneBank));
song->drumset[i]->tone = master_drumset[i]->tone;
}
}
@@ -521,8 +510,8 @@ MidiSong *Timidity_LoadSong(SDL_RWops *rw, SDL_AudioSpec *audio)
}
song->buffer_size = audio->samples;
- song->resample_buffer = safe_malloc(audio->samples * sizeof(sample_t));
- song->common_buffer = safe_malloc(audio->samples * 2 * sizeof(Sint32));
+ song->resample_buffer = SDL_malloc(audio->samples * sizeof(sample_t));
+ song->common_buffer = SDL_malloc(audio->samples * 2 * sizeof(Sint32));
song->control_ratio = audio->freq / CONTROLS_PER_SECOND;
if (song->control_ratio < 1)