mirror of
https://github.com/love2d/love.git
synced 2026-08-14 01:20:56 +02:00
Also test source pitch is positive and clarify error (resolves #1474)
According to the OpenAL 1.1 specification AL_PITCH, values must be in the range (0.0f, any]. Though I guess any does not include infinity.
This commit is contained in:
@@ -71,10 +71,11 @@ int w_Source_setPitch(lua_State *L)
|
||||
{
|
||||
Source *t = luax_checksource(L, 1);
|
||||
float p = (float)luaL_checknumber(L, 2);
|
||||
if (p != p)
|
||||
return luaL_error(L, "Pitch cannot be NaN.");
|
||||
if (p > std::numeric_limits<lua_Number>::max() ||
|
||||
p < std::numeric_limits<lua_Number>::min() ||
|
||||
p != p)
|
||||
return luaL_error(L, "Pitch has to be finite and not NaN.");
|
||||
p <= 0.0f)
|
||||
return luaL_error(L, "Pitch has to be non-zero, positive, finite number.");
|
||||
t->setPitch(p);
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user