瀏覽代碼

#242 loosing linked objects when modifying name attribute

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@748 a333f486-631f-4898-b8df-5754b55c2be0
romainq 14 年之前
父節點
當前提交
09c9718b67
共有 1 個文件被更改,包括 7 次插入3 次删除
  1. 7 3
      core/dbobject.class.php

+ 7 - 3
core/dbobject.class.php

@@ -790,10 +790,14 @@ abstract class DBObject
 			{
 				$aOriginalList = $oOriginalSet->ToArray();
 				$aNewSet = $oLinks->ToArray();
-				$aToDelete = array_diff($aOriginalList, $aNewSet);
-				foreach ($aToDelete as $iKey => $oObject)
+				
+				foreach($aOriginalList as $iId => $oObject)
 				{
-					$oObject->DBDelete();
+					if (!array_key_exists($iId, $aNewSet))
+					{
+						// It disappeared from the list
+						$oObject->DBDelete();
+					}
 				}
 			}
 		}