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

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