X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=plugins%2Fdali-swig%2Fmanual%2Fcsharp%2FViewWrapper.cs;h=bcc54ec13ffd33223afa2627cb4cfb89855bd72c;hp=f0660b1ecc93f812926b7ee375eb7aa4c5e5771b;hb=cedba732c89206dbb8c1f592c23a12b16d7fc3d2;hpb=c57e053b5795783ad92b0fd7f8fbaba6b6d9322a diff --git a/plugins/dali-swig/manual/csharp/ViewWrapper.cs b/plugins/dali-swig/manual/csharp/ViewWrapper.cs old mode 100644 new mode 100755 index f0660b1..bcc54ec --- a/plugins/dali-swig/manual/csharp/ViewWrapper.cs +++ b/plugins/dali-swig/manual/csharp/ViewWrapper.cs @@ -1,19 +1,18 @@ -/* - * Copyright (c) 2016 Samsung Electronics Co., Ltd. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ +/** Copyright (c) 2017 Samsung Electronics Co., Ltd. +* +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* +*/ namespace Dali { @@ -34,12 +33,18 @@ namespace Dali ~ViewWrapper() { - Dispose(); + DisposeQueue.Instance.Add(this); } public override void Dispose() { - lock(this) + if (!Stage.IsInstalled()) + { + DisposeQueue.Instance.Add(this); + return; + } + + lock (this) { if (swigCPtr.Handle != global::System.IntPtr.Zero) { @@ -55,7 +60,8 @@ namespace Dali } } - public ViewWrapper (string typeName, ViewWrapperImpl implementation) : this (NDalicManualPINVOKE.ViewWrapper_New(typeName, ViewWrapperImpl.getCPtr(implementation)), true) + + public ViewWrapper(string typeName, ViewWrapperImpl implementation) : this(NDalicManualPINVOKE.ViewWrapper_New(typeName, ViewWrapperImpl.getCPtr(implementation)), true) { viewWrapperImpl = implementation; if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve(); @@ -81,3 +87,4 @@ namespace Dali } } } +