Fix counting free objects
This commit is contained in:
@@ -164,7 +164,7 @@ bool EnsureEffectSlots(ALCcontext *context, size_t needed)
|
||||
size_t count{std::accumulate(context->mEffectSlotList.cbegin(),
|
||||
context->mEffectSlotList.cend(), size_t{0},
|
||||
[](size_t cur, const EffectSlotSubList &sublist) noexcept -> size_t
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(~sublist.FreeMask)); }
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(sublist.FreeMask)); }
|
||||
)};
|
||||
|
||||
while(needed > count)
|
||||
|
||||
+1
-1
@@ -286,7 +286,7 @@ bool EnsureBuffers(ALCdevice *device, size_t needed)
|
||||
{
|
||||
size_t count{std::accumulate(device->BufferList.cbegin(), device->BufferList.cend(), size_t{0},
|
||||
[](size_t cur, const BufferSubList &sublist) noexcept -> size_t
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(~sublist.FreeMask)); }
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(sublist.FreeMask)); }
|
||||
)};
|
||||
|
||||
while(needed > count)
|
||||
|
||||
+1
-1
@@ -141,7 +141,7 @@ bool EnsureEffects(ALCdevice *device, size_t needed)
|
||||
{
|
||||
size_t count{std::accumulate(device->EffectList.cbegin(), device->EffectList.cend(), size_t{0},
|
||||
[](size_t cur, const EffectSubList &sublist) noexcept -> size_t
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(~sublist.FreeMask)); }
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(sublist.FreeMask)); }
|
||||
)};
|
||||
|
||||
while(needed > count)
|
||||
|
||||
+1
-1
@@ -283,7 +283,7 @@ bool EnsureFilters(ALCdevice *device, size_t needed)
|
||||
{
|
||||
size_t count{std::accumulate(device->FilterList.cbegin(), device->FilterList.cend(), size_t{0},
|
||||
[](size_t cur, const FilterSubList &sublist) noexcept -> size_t
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(~sublist.FreeMask)); }
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(sublist.FreeMask)); }
|
||||
)};
|
||||
|
||||
while(needed > count)
|
||||
|
||||
+1
-1
@@ -500,7 +500,7 @@ bool EnsureSources(ALCcontext *context, size_t needed)
|
||||
size_t count{std::accumulate(context->mSourceList.cbegin(), context->mSourceList.cend(),
|
||||
size_t{0},
|
||||
[](size_t cur, const SourceSubList &sublist) noexcept -> size_t
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(~sublist.FreeMask)); }
|
||||
{ return cur + static_cast<ALuint>(POPCNT64(sublist.FreeMask)); }
|
||||
)};
|
||||
|
||||
while(needed > count)
|
||||
|
||||
Reference in New Issue
Block a user