+ // this is temporary test code. will be removed laster
+ {
+ if (swigCPtr.Handle != IntPtr.Zero && swigCPtrCopy.Handle != IntPtr.Zero)
+ {
+ var process = global::System.Diagnostics.Process.GetCurrentProcess().Id;
+ var thread = global::System.Threading.Thread.CurrentThread.ManagedThreadId;
+ var me = this.GetType().FullName;
+ var daliId = "unknown";
+ var hash = this.GetType().GetHashCode();
+ var name = "unknown";
+
+ if (this is BaseComponents.View)
+ {
+ daliId = Interop.Actor.GetId(swigCPtrCopy).ToString();
+ name = Interop.Actor.GetName(swigCPtrCopy);
+ BaseObject tmp = new BaseObject(Interop.BaseHandle.GetBaseObject(swigCPtrCopy), false);
+ var refCnt = tmp.ReferenceCount();
+ tmp.Dispose();
+ if (refCnt > 2)
+ {
+ Log.Error("NUI", $"[ERR] reference count is over than 2. Could be a memory leak. Need to check! \n" +
+ $" process:{process} thread:{thread}, isDisposed:{this.disposed}, isDisposeQueued:{this.isDisposeQueued}, me:{me} \n" +
+ $" disposeType:{type}, name:{name}, daliID:{daliId}, hash:{hash}, refCnt:{refCnt}");
+ }
+ }
+ }
+ }