|
@@ -64,7 +64,7 @@ namespace sound
|
|
SoundData::SoundData(int samples, int sampleRate, int bits, int channels)
|
|
SoundData::SoundData(int samples, int sampleRate, int bits, int channels)
|
|
: data(0), size(samples*(bits/8)*channels), sampleRate(sampleRate), bits(bits), channels(channels)
|
|
: data(0), size(samples*(bits/8)*channels), sampleRate(sampleRate), bits(bits), channels(channels)
|
|
{
|
|
{
|
|
- unsigned double realsize = samples;
|
|
|
|
|
|
+ double realsize = samples;
|
|
realsize *= (bits/8)*channels;
|
|
realsize *= (bits/8)*channels;
|
|
if (realsize > INT_MAX)
|
|
if (realsize > INT_MAX)
|
|
throw love::Exception("Data is too big!");
|
|
throw love::Exception("Data is too big!");
|
|
@@ -76,7 +76,7 @@ namespace sound
|
|
SoundData::SoundData(void * d, int samples, int sampleRate, int bits, int channels)
|
|
SoundData::SoundData(void * d, int samples, int sampleRate, int bits, int channels)
|
|
: data(0), size(samples*(bits/8)*channels), sampleRate(sampleRate), bits(bits), channels(channels)
|
|
: data(0), size(samples*(bits/8)*channels), sampleRate(sampleRate), bits(bits), channels(channels)
|
|
{
|
|
{
|
|
- unsigned double realsize = samples;
|
|
|
|
|
|
+ double realsize = samples;
|
|
realsize *= (bits/8)*channels;
|
|
realsize *= (bits/8)*channels;
|
|
if (realsize > INT_MAX)
|
|
if (realsize > INT_MAX)
|
|
throw love::Exception("Data is too big!");
|
|
throw love::Exception("Data is too big!");
|