move isbeingdrawn fully to framework and try catch

This commit is contained in:
Stanley Dimant
2023-02-27 10:40:06 +01:00
parent d1514472c1
commit 912d0bd800

View File

@@ -126,25 +126,25 @@ public class GameObjectHandler : MediatorSubscriberBase
public async Task<bool> IsBeingDrawn() public async Task<bool> IsBeingDrawn()
{ {
var curPtr = _getAddress.Invoke(); return await _dalamudUtil.RunOnFrameworkThread(() =>
try
{ {
return await _dalamudUtil.RunOnFrameworkThread(() => var curPtr = _getAddress.Invoke();
try
{ {
var drawObj = GetDrawObj(); var drawObj = GetDrawObj();
return IsBeingDrawn(drawObj, curPtr); return IsBeingDrawn(drawObj, curPtr);
}).ConfigureAwait(false);
}
catch (Exception ex)
{
_logger.LogError(ex, "Error during checking for draw object for {name}", curPtr);
if (curPtr != IntPtr.Zero)
{
return true;
} }
} catch (Exception ex)
{
if (curPtr != IntPtr.Zero)
{
return true;
}
return false; return false;
}
}).ConfigureAwait(false);
} }
private unsafe void CheckAndUpdateObject() private unsafe void CheckAndUpdateObject()