From: jusung son Date: Wed, 26 Apr 2017 11:57:20 +0000 (+0900) Subject: Fix wrong service management X-Git-Tag: submit/trunk/20170823.075128~112^2~15 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d8585120f2f5e4f36b3402d111ae7e62435a6e13;p=platform%2Fcore%2Fcsapi%2Ftizenfx.git Fix wrong service management Change-Id: I2bdc4a2076d3120e84df3175c915caddfcb7a71d Signed-off-by: jusung son --- diff --git a/src/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs b/src/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs index 699f522..9c0f819 100755 --- a/src/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs +++ b/src/Tizen.Applications.DataControl/Tizen.Applications.DataControl/Provider.cs @@ -40,6 +40,7 @@ namespace Tizen.Applications.DataControl private static Interop.DataControl.MapBulkAddRequestCallback _mapBulkCallback; private static Mutex _lock = new Mutex(); private bool _disposed = false; + private bool _isRunning = false; /// /// Gets the data ID @@ -823,6 +824,7 @@ namespace Tizen.Applications.DataControl { provider = _providerDict[dataID]; provider._nativeHandle = handlePtr; + Log.Info(LogTag, "DataID :" + dataID + ", hash code : " + provider.GetHashCode().ToString()); } handle.Dispose(); @@ -888,6 +890,7 @@ namespace Tizen.Applications.DataControl if (_providerDict.ContainsKey(DataID)) { _lock.ReleaseMutex(); + ErrorFactory.ThrowException((ResultType)1, true, "The provider is already running"); return; } @@ -954,6 +957,8 @@ namespace Tizen.Applications.DataControl } _providerDict.Add(DataID, this); + Log.Info(LogTag, "DataID :" + DataID + ", hash code : " + this.GetHashCode().ToString()); + _isRunning = true; _lock.ReleaseMutex(); } @@ -962,7 +967,12 @@ namespace Tizen.Applications.DataControl /// public void Stop() { - _providerDict.Remove(DataID); + if (_isRunning == true) + { + Log.Info(LogTag, "DataID :" + DataID); + _isRunning = false; + _providerDict.Remove(DataID); + } } ~Provider()