From a96825bb6fced8aadb1af79f000d21389f546bed Mon Sep 17 00:00:00 2001 From: hjhun <36876573+hjhun@users.noreply.github.com> Date: Fri, 6 Nov 2020 14:53:54 +0900 Subject: [PATCH] Fix static analysis issues (#2190) Issues: - NO_LOCK.STAT Signed-off-by: Hwankyu Jhun --- .../Tizen.Applications/ApplicationManager.cs | 30 +++++++++++++--------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/src/Tizen.Applications.Common/Tizen.Applications/ApplicationManager.cs b/src/Tizen.Applications.Common/Tizen.Applications/ApplicationManager.cs index 85f0785..64969c7 100755 --- a/src/Tizen.Applications.Common/Tizen.Applications/ApplicationManager.cs +++ b/src/Tizen.Applications.Common/Tizen.Applications/ApplicationManager.cs @@ -447,13 +447,16 @@ namespace Tizen.Applications } using (ApplicationRunningContext context = new ApplicationRunningContext(clonedHandle)) { - if (state == Interop.ApplicationManager.AppContextEvent.Launched) + lock (s_applicationChangedEventLock) { - s_launchedHandler?.Invoke(null, new ApplicationLaunchedEventArgs { ApplicationRunningContext = context }); - } - else if (state == Interop.ApplicationManager.AppContextEvent.Terminated) - { - s_terminatedHandler?.Invoke(null, new ApplicationTerminatedEventArgs { ApplicationRunningContext = context }); + if (state == Interop.ApplicationManager.AppContextEvent.Launched) + { + s_launchedHandler?.Invoke(null, new ApplicationLaunchedEventArgs { ApplicationRunningContext = context }); + } + else if (state == Interop.ApplicationManager.AppContextEvent.Terminated) + { + s_terminatedHandler?.Invoke(null, new ApplicationTerminatedEventArgs { ApplicationRunningContext = context }); + } } } }; @@ -488,13 +491,16 @@ namespace Tizen.Applications s_eventCallback = (string appType, string appId, Interop.ApplicationManager.AppManagerEventType eventType, Interop.ApplicationManager.AppManagerEventState eventState, IntPtr eventHandle, IntPtr UserData) => { - if (eventType == Interop.ApplicationManager.AppManagerEventType.Enable) - { - s_enabledHandler?.Invoke(null, new ApplicationEnabledEventArgs(appId, (ApplicationEventState)eventState)); - } - else if (eventType == Interop.ApplicationManager.AppManagerEventType.Disable) + lock (s_eventLock) { - s_disabledHandler?.Invoke(null, new ApplicationDisabledEventArgs(appId, (ApplicationEventState)eventState)); + if (eventType == Interop.ApplicationManager.AppManagerEventType.Enable) + { + s_enabledHandler?.Invoke(null, new ApplicationEnabledEventArgs(appId, (ApplicationEventState)eventState)); + } + else if (eventType == Interop.ApplicationManager.AppManagerEventType.Disable) + { + s_disabledHandler?.Invoke(null, new ApplicationDisabledEventArgs(appId, (ApplicationEventState)eventState)); + } } }; err = Interop.ApplicationManager.AppManagerSetEventCallback(_eventHandle, s_eventCallback, IntPtr.Zero); -- 2.7.4