[NUI][XamlBuild] Set node as null after calling ExitXaml().
authorguowei.wang <guowei.wang@samsung.com>
Thu, 24 Mar 2022 09:10:40 +0000 (17:10 +0800)
committerdongsug-song <35130733+dongsug-song@users.noreply.github.com>
Thu, 31 Mar 2022 10:48:40 +0000 (19:48 +0900)
pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll
src/Tizen.NUI.XamlBuild/src/public/XamlBuild/XamlGenerator.cs

index 2d55ad4..bdc447a 100644 (file)
Binary files a/pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll and b/pkg/Tizen.NET.API9/xamlbuild/Tizen.NUI.XamlBuild.dll differ
index eacd95d..1f2fa72 100755 (executable)
@@ -428,7 +428,7 @@ namespace Tizen.NUI.Xaml.Build.Tasks
                 Provider.GenerateCodeFromCompileUnit(ccu, writer, new CodeGeneratorOptions());
         }
 
-        private static void GenerateMethodExitXaml(CodeTypeDeclaration declType)
+        private void GenerateMethodExitXaml(CodeTypeDeclaration declType)
         {
             var removeEventsComp = new CodeMemberMethod()
             {
@@ -459,6 +459,19 @@ namespace Tizen.NUI.Xaml.Build.Tasks
 
             exitXamlComp.Statements.Add(disposeXamlElements_invoke);
 
+            CodeAssignStatement eXamlDataAssign = new CodeAssignStatement(
+                    new CodeVariableReferenceExpression("eXamlData"), new CodeDefaultValueExpression(new CodeTypeReference(typeof(object))));
+
+            exitXamlComp.Statements.Add(eXamlDataAssign);
+
+            foreach (var namedField in NamedFields)
+            {
+                CodeAssignStatement assign = new CodeAssignStatement(
+                    new CodeVariableReferenceExpression(namedField.Name), new CodeDefaultValueExpression(namedField.Type));
+
+                exitXamlComp.Statements.Add(assign);
+            }
+
             declType.Members.Add(exitXamlComp);
         }