Sfoglia il codice sorgente

#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 anni fa
parent
commit
09c9718b67
1 ha cambiato i file con 7 aggiunte e 3 eliminazioni
  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();
+					}
 				}
 			}
 		}