diff --git a/jail_audio.cpp b/jail_audio.cpp index 8d1637a..7ce9aec 100644 --- a/jail_audio.cpp +++ b/jail_audio.cpp @@ -88,7 +88,6 @@ void JA_Quit() { JA_Music JA_LoadMusic(const char* filename) { int chan, samplerate; - JA_Music music = new JA_Music_t(); // [RZC 28/08/22] Carreguem primer el arxiu en memòria i després el descomprimim. Es algo més rapid. FILE *f = fopen(filename, "rb"); @@ -96,9 +95,11 @@ JA_Music JA_LoadMusic(const char* filename) { long fsize = ftell(f); fseek(f, 0, SEEK_SET); Uint8 *buffer = (Uint8*)malloc(fsize + 1); - fread(buffer, fsize, 1, f); + if (fread(buffer, fsize, 1, f)!=1) return NULL; fclose(f); + JA_Music music = new JA_Music_t(); + music->samples = stb_vorbis_decode_memory(buffer, fsize, &chan, &samplerate, &music->output); free(buffer); // [RZC 28/08/22] Abans el descomprimiem mentre el teniem obert diff --git a/main.cpp b/main.cpp index d844c26..8c37c1a 100644 --- a/main.cpp +++ b/main.cpp @@ -48,6 +48,8 @@ int main(int argc, char **argv) { case SDL_SCANCODE_DOWN: volume = JA_SetVolume(volume-16); break; + default: + break; } }