mirror of
https://github.com/mackron/miniaudio.git
synced 2026-04-24 01:04:02 +02:00
Update dr_mp3.
This commit is contained in:
+28
-5
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
MP3 audio decoder. Choice of public domain or MIT-0. See license statements at the end of this file.
|
||||
dr_mp3 - v0.6.21 - 2020-11-28
|
||||
dr_mp3 - v0.6.22 - 2020-12-02
|
||||
|
||||
David Reid - mackron@gmail.com
|
||||
|
||||
@@ -95,7 +95,7 @@ extern "C" {
|
||||
|
||||
#define DRMP3_VERSION_MAJOR 0
|
||||
#define DRMP3_VERSION_MINOR 6
|
||||
#define DRMP3_VERSION_REVISION 21
|
||||
#define DRMP3_VERSION_REVISION 22
|
||||
#define DRMP3_VERSION_STRING DRMP3_XSTRINGIFY(DRMP3_VERSION_MAJOR) "." DRMP3_XSTRINGIFY(DRMP3_VERSION_MINOR) "." DRMP3_XSTRINGIFY(DRMP3_VERSION_REVISION)
|
||||
|
||||
#include <stddef.h> /* For size_t. */
|
||||
@@ -3487,22 +3487,38 @@ static drmp3_bool32 drmp3__on_seek_stdio(void* pUserData, int offset, drmp3_seek
|
||||
|
||||
DRMP3_API drmp3_bool32 drmp3_init_file(drmp3* pMP3, const char* pFilePath, const drmp3_allocation_callbacks* pAllocationCallbacks)
|
||||
{
|
||||
drmp3_bool32 result;
|
||||
FILE* pFile;
|
||||
|
||||
if (drmp3_fopen(&pFile, pFilePath, "rb") != DRMP3_SUCCESS) {
|
||||
return DRMP3_FALSE;
|
||||
}
|
||||
|
||||
return drmp3_init(pMP3, drmp3__on_read_stdio, drmp3__on_seek_stdio, (void*)pFile, pAllocationCallbacks);
|
||||
result = drmp3_init(pMP3, drmp3__on_read_stdio, drmp3__on_seek_stdio, (void*)pFile, pAllocationCallbacks);
|
||||
if (result != DRMP3_TRUE) {
|
||||
fclose(pFile);
|
||||
return result;
|
||||
}
|
||||
|
||||
return DRMP3_TRUE;
|
||||
}
|
||||
|
||||
DRMP3_API drmp3_bool32 drmp3_init_file_w(drmp3* pMP3, const wchar_t* pFilePath, const drmp3_allocation_callbacks* pAllocationCallbacks)
|
||||
{
|
||||
drmp3_bool32 result;
|
||||
FILE* pFile;
|
||||
|
||||
if (drmp3_wfopen(&pFile, pFilePath, L"rb", pAllocationCallbacks) != DRMP3_SUCCESS) {
|
||||
return DRMP3_FALSE;
|
||||
}
|
||||
|
||||
return drmp3_init(pMP3, drmp3__on_read_stdio, drmp3__on_seek_stdio, (void*)pFile, pAllocationCallbacks);
|
||||
result = drmp3_init(pMP3, drmp3__on_read_stdio, drmp3__on_seek_stdio, (void*)pFile, pAllocationCallbacks);
|
||||
if (result != DRMP3_TRUE) {
|
||||
fclose(pFile);
|
||||
return result;
|
||||
}
|
||||
|
||||
return DRMP3_TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -3514,7 +3530,11 @@ DRMP3_API void drmp3_uninit(drmp3* pMP3)
|
||||
|
||||
#ifndef DR_MP3_NO_STDIO
|
||||
if (pMP3->onRead == drmp3__on_read_stdio) {
|
||||
fclose((FILE*)pMP3->pUserData);
|
||||
FILE* pFile = (FILE*)pMP3->pUserData;
|
||||
if (pFile != NULL) {
|
||||
fclose(pFile);
|
||||
pMP3->pUserData = NULL; /* Make sure the file handle is cleared to NULL to we don't attempt to close it a second time. */
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -4438,6 +4458,9 @@ counts rather than sample counts.
|
||||
/*
|
||||
REVISION HISTORY
|
||||
================
|
||||
v0.6.22 - 2020-12-02
|
||||
- Fix an error where it's possible for a file handle to be left open when initialization of the decoder fails.
|
||||
|
||||
v0.6.21 - 2020-11-28
|
||||
- Bring up to date with minimp3.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user