Fix the realloc usage of outbuffer in WaveCallback(wavegen.c)

This commit is contained in:
Reece H. Dunn
2016-01-12 21:46:08 +00:00
parent 54f8c672e5
commit 8e7f4e7e3d
+4 -3
View File
@@ -380,10 +380,11 @@ static int WaveCallback(const void *inputBuffer, void *outputBuffer,
// make a buffer 3x size of the portaudio output
ix = pa_size*3;
if (ix > outbuffer_size) {
outbuffer = (unsigned char *)realloc(outbuffer, ix);
if (outbuffer == NULL) {
unsigned char *new_outbuffer = (unsigned char *)realloc(outbuffer, ix);
if (new_outbuffer == NULL)
fprintf(stderr, "espeak: out of memory\n");
}
else
outbuffer = new_outbuffer;
outbuffer_size = ix;
out_ptr = NULL;
}