Browse Source

[raudio] Fixed memory leak on early-return of WaveFormat func (#4779)

In the case of a failure within miniaudio on the function: ma_convert_frames, the dynamic memory allocated for the `data` variable  will leak on the early return.
pull/4787/head
Ralph Caraveo 3 weeks ago
committed by GitHub
parent
commit
4522ecae1a
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
1 changed files with 1 additions and 0 deletions
  1. +1
    -0
      src/raudio.c

+ 1
- 0
src/raudio.c View File

@ -1240,6 +1240,7 @@ void WaveFormat(Wave *wave, int sampleRate, int sampleSize, int channels)
frameCount = (ma_uint32)ma_convert_frames(data, frameCount, formatOut, channels, sampleRate, wave->data, frameCountIn, formatIn, wave->channels, wave->sampleRate); frameCount = (ma_uint32)ma_convert_frames(data, frameCount, formatOut, channels, sampleRate, wave->data, frameCountIn, formatIn, wave->channels, wave->sampleRate);
if (frameCount == 0) if (frameCount == 0)
{ {
RL_FREE(wave->data);
TRACELOG(LOG_WARNING, "WAVE: Failed format conversion"); TRACELOG(LOG_WARNING, "WAVE: Failed format conversion");
return; return;
} }

Loading…
Cancel
Save