Perform bounds checking before list indexer to avoid frequent exceptions (#4438)
* Perform bounds checking before list indexer to avoid frequent ArgumentOutOfRangeExceptions * do a single compare after casting id and .Count to uint
This commit is contained in:
parent
095ad923ad
commit
58207685c0
1 changed files with 10 additions and 2 deletions
|
@ -79,10 +79,18 @@ namespace Ryujinx.Graphics.Vulkan
|
||||||
id--;
|
id--;
|
||||||
|
|
||||||
try
|
try
|
||||||
|
{
|
||||||
|
if ((uint)id < (uint)_list.Count)
|
||||||
{
|
{
|
||||||
value = _list[id];
|
value = _list[id];
|
||||||
return value != null;
|
return value != null;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
value = null;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
catch (ArgumentOutOfRangeException)
|
catch (ArgumentOutOfRangeException)
|
||||||
{
|
{
|
||||||
value = null;
|
value = null;
|
||||||
|
|
Reference in a new issue