lib/openwfe/expressions/fe_losfor.rb in openwferu-0.9.8 vs lib/openwfe/expressions/fe_losfor.rb in openwferu-0.9.9

- old
+ new

@@ -62,11 +62,11 @@ get_expression_pool.remove(self) end end # - # This method triggers its child (in its own thread) and then + # This expression triggers its child (in its own thread) and then # forgets about it. It immediately replies to its parent expression. # class ForgetExpression < FlowExpression names :forget @@ -77,23 +77,24 @@ wi = workitem.dup Thread.new do begin - #child = get_expression_pool.fetch(@children[0]) - #child.parent_id = nil - get_expression_pool.forget(@children[0]) - get_expression_pool.apply(@children[0], wi) + + child = @children[0] + get_expression_pool.forget(self, child) + get_expression_pool.apply(child, wi) + rescue Exception => e lwarn do "apply() failed to apply child to forget "+ OpenWFE::exception_to_s(e) end end end end - reply_to_parent(wi) + reply_to_parent(workitem) end def reply (workitem) # never gets called end