diff --git a/CHANGES b/CHANGES index 27c3c6da..c3ef2c41 100644 --- a/CHANGES +++ b/CHANGES @@ -1,6 +1,8 @@ v3.0.4 - YYYY-MMM-DD (to be released) ------------------------------------- + - Rule variable interpolation broken + [Issue #1961 - @soonum, @zimmerle] - Make the boundary check less strict as per RFC2046 [Issue #1943 - @victorhora, @allanbomsft] - Fix buffer size for utf8toUnicode transformation diff --git a/src/actions/set_var.cc b/src/actions/set_var.cc index e099fb5b..8cb743e1 100644 --- a/src/actions/set_var.cc +++ b/src/actions/set_var.cc @@ -65,17 +65,17 @@ bool SetVar::evaluate(Rule *rule, Transaction *t) { Variables::User_DynamicElement *user = dynamic_cast< Variables::User_DynamicElement *> (v); if (tx) { - m_variableNameExpanded = tx->m_string->evaluate(t); + m_variableNameExpanded = tx->m_string->evaluate(t, rule); } else if (session) { - m_variableNameExpanded = session->m_string->evaluate(t); + m_variableNameExpanded = session->m_string->evaluate(t, rule); } else if (ip) { - m_variableNameExpanded = ip->m_string->evaluate(t); + m_variableNameExpanded = ip->m_string->evaluate(t, rule); } else if (resource) { - m_variableNameExpanded = resource->m_string->evaluate(t); + m_variableNameExpanded = resource->m_string->evaluate(t, rule); } else if (global) { - m_variableNameExpanded = global->m_string->evaluate(t); + m_variableNameExpanded = global->m_string->evaluate(t, rule); } else if (user) { - m_variableNameExpanded = user->m_string->evaluate(t); + m_variableNameExpanded = user->m_string->evaluate(t, rule); } else { m_variableNameExpanded = m_variable->m_name; }