From 6c128616da081d87b3018403bda990decad7034d Mon Sep 17 00:00:00 2001
From: Kazuhiko Shiozaki <kazuhiko@nexedi.com>
Date: Mon, 8 Mar 2010 15:27:56 +0000
Subject: [PATCH] no need to pass solved_property_list, because it is apparent
 from value_dict.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@33504 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/Document/AcceptSolver.py | 11 ++++-------
 product/ERP5/Document/UnifySolver.py  |  3 +--
 2 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/product/ERP5/Document/AcceptSolver.py b/product/ERP5/Document/AcceptSolver.py
index 90ac5449f8..a7ebff8b88 100644
--- a/product/ERP5/Document/AcceptSolver.py
+++ b/product/ERP5/Document/AcceptSolver.py
@@ -84,14 +84,12 @@ class AcceptSolver(SolverMixin, ConfigurableMixin, XMLObject):
             value_dict.update({'quantity':new_quantity})
           else:
             value_dict.update({solved_property:new_value})
-        self._solveRecursively(simulation_movement, value_dict,
-                               solved_property_list)
+        self._solveRecursively(simulation_movement, value_dict)
         simulation_movement.expand()
     # Finish solving
     self.succeed()
 
-  def _solveRecursively(self, simulation_movement, value_dict=None,
-                        property_id_list=None):
+  def _solveRecursively(self, simulation_movement, value_dict=None):
     """
       Update value of the current simulation movement, and update
       his parent movement.
@@ -101,10 +99,9 @@ class AcceptSolver(SolverMixin, ConfigurableMixin, XMLObject):
     if parent_movement.getPortalType() == 'Simulation Movement' and \
            not parent_movement.isFrozen():
       # backtrack to the parent movement while it is not frozen
-      self._solveRecursively(parent_movement, value_dict=value_dict,
-                             property_id_list=property_id_list)
+      self._solveRecursively(parent_movement, value_dict=value_dict)
     else:
-      for property_id in property_id_list:
+      for property_id in value_dict.iterkeys():
         if not simulation_movement.isPropertyRecorded(property_id):
           simulation_movement.recordProperty(property_id)
     for property_id, value in value_dict.iteritems():
diff --git a/product/ERP5/Document/UnifySolver.py b/product/ERP5/Document/UnifySolver.py
index d1284fcfda..0e1afe3d82 100644
--- a/product/ERP5/Document/UnifySolver.py
+++ b/product/ERP5/Document/UnifySolver.py
@@ -77,8 +77,7 @@ class UnifySolver(AcceptSolver):
            for x in self.getDeliveryValue().getMovementList()], [])
       for simulation_movement in simulation_movement_list:
         value_dict = {solved_property:new_value}
-        self._solveRecursively(simulation_movement, value_dict,
-                               [solved_property])
+        self._solveRecursively(simulation_movement, value_dict)
         simulation_movement.expand()
     # Finish solving
     self.succeed()
-- 
2.30.9