Browse Source

Save signaled callback and execute it outside of @synchronized block

pull/3613/head
Nikita Tsukanov 6 years ago
parent
commit
87c08c776c
  1. 7
      native/Avalonia.Native/src/OSX/platformthreading.mm

7
native/Avalonia.Native/src/OSX/platformthreading.mm

@ -157,11 +157,14 @@ NSArray<NSString*>* _modes;
-(void) perform
{
ComPtr<IAvnSignaledCallback> cb;
@synchronized (self) {
_signaled = false;
if(_parent != NULL && _parent->SignaledCallback != NULL)
_parent->SignaledCallback->Signaled(0, false);
if(_parent != NULL)
cb = _parent->SignaledCallback;
}
if(cb != nullptr)
cb->Signaled(0, false);
}
-(void) setParent:(PlatformThreadingInterface *)parent

Loading…
Cancel
Save