Commit fc9026ea authored by David Reid's avatar David Reid

Fix potential crash when ma_device not aligned to MA_SIMD_ALIGNMENT.

Public issue https://github.com/dr-soft/miniaudio/issues/128
parent 811e438d
/* /*
Audio playback and capture library. Choice of public domain or MIT-0. See license statements at the end of this file. Audio playback and capture library. Choice of public domain or MIT-0. See license statements at the end of this file.
miniaudio (formerly mini_al) - v0.9.10 - 2020-01-15 miniaudio (formerly mini_al) - v0.xx.xx - 2020-xx-xx
David Reid - davidreidsoftware@gmail.com David Reid - davidreidsoftware@gmail.com
...@@ -624,12 +624,6 @@ typedef ma_uint16 wchar_t; ...@@ -624,12 +624,6 @@ typedef ma_uint16 wchar_t;
#define MA_ALIGN(alignment) #define MA_ALIGN(alignment)
#endif #endif
#ifdef _MSC_VER
#define MA_ALIGNED_STRUCT(alignment) MA_ALIGN(alignment) struct
#else
#define MA_ALIGNED_STRUCT(alignment) struct MA_ALIGN(alignment)
#endif
/* SIMD alignment in bytes. Currently set to 64 bytes in preparation for future AVX-512 optimizations. */ /* SIMD alignment in bytes. Currently set to 64 bytes in preparation for future AVX-512 optimizations. */
#define MA_SIMD_ALIGNMENT 64 #define MA_SIMD_ALIGNMENT 64
...@@ -950,7 +944,7 @@ typedef struct ...@@ -950,7 +944,7 @@ typedef struct
ma_src_config_sinc sinc; ma_src_config_sinc sinc;
} ma_src_config; } ma_src_config;
MA_ALIGNED_STRUCT(MA_SIMD_ALIGNMENT) ma_src struct ma_src
{ {
union union
{ {
...@@ -1009,7 +1003,7 @@ typedef struct ...@@ -1009,7 +1003,7 @@ typedef struct
}; };
} ma_pcm_converter_config; } ma_pcm_converter_config;
MA_ALIGNED_STRUCT(MA_SIMD_ALIGNMENT) ma_pcm_converter struct ma_pcm_converter
{ {
ma_pcm_converter_read_proc onRead; ma_pcm_converter_read_proc onRead;
void* pUserData; void* pUserData;
...@@ -2431,7 +2425,7 @@ struct ma_context ...@@ -2431,7 +2425,7 @@ struct ma_context
}; };
}; };
MA_ALIGNED_STRUCT(MA_SIMD_ALIGNMENT) ma_device struct ma_device
{ {
ma_context* pContext; ma_context* pContext;
ma_device_type type; ma_device_type type;
...@@ -35905,6 +35899,9 @@ Device ...@@ -35905,6 +35899,9 @@ Device
/* /*
REVISION HISTORY REVISION HISTORY
================ ================
v0.xx.xx - 2020-xx-xx
- Fix potential crash when ma_device object's are not aligned to MA_SIMD_ALIGNMENT.
v0.9.10 - 2020-01-15 v0.9.10 - 2020-01-15
- Fix compilation errors due to #if/#endif mismatches. - Fix compilation errors due to #if/#endif mismatches.
- WASAPI: Fix a bug where automatic stream routing is being performed for devices that are initialized with an explicit device ID. - WASAPI: Fix a bug where automatic stream routing is being performed for devices that are initialized with an explicit device ID.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment