From 8f22ce2a69e84cbf78a1d41d55028fd303353316 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Emma=20S=C3=B6derberg?= <emma.m.soderberg@gmail.com>
Date: Wed, 23 May 2018 14:01:32 +0200
Subject: [PATCH] Removes computed check to change propagation of circular
 attributes.

This is to prevent the change propagation from being cut short when
the computed value is not fully set. This can happen when circular
attributes are nested and a last cycle to cache all attributes in the
same cycle is not run.
---
 src/template/incremental/Notification.tt | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/template/incremental/Notification.tt b/src/template/incremental/Notification.tt
index 05fc06d1..081de023 100644
--- a/src/template/incremental/Notification.tt
+++ b/src/template/incremental/Notification.tt
@@ -221,7 +221,11 @@ $endif
 ASTDecl.attrFlushCheck = [[
 $if(IncrementalLevelParam)
 $if(IsParameterized)
+$if(!#isCircular)
+if (attrID.equals("$AttrSign") && $(AttrSign)_values != null) {
+$else
 if (attrID.equals("$AttrSign") && $(AttrSign)_values != null && $(AttrSign)_values.containsKey(_parameters)) {
+$endif
   $if(IsNTA)
   $AttrType value = ($AttrType)$(AttrSign)_values.remove(_parameters);
   for (int i = 0; i < $(AttrSign)_proxy.children.length; i++) {
@@ -245,7 +249,11 @@ if (attrID.equals("$AttrSign") && $(AttrSign)_values != null && $(AttrSign)_valu
   return;
 }
 $else
+$if(!#isCircular)
+if (attrID.equals("$AttrSign")) {
+$else
 if (attrID.equals("$AttrSign") && $(AttrSign)_computed) {
+$endif
   $if(IsNTA)
   if ($(AttrSign)_value instanceof $ASTNode) {
     $(AttrSign)_value.setParent(null);
-- 
GitLab