zendframework/zf2 — pull request #2848 by DaHaiz (2012-10-28 17:47:46+00:00)
Title: Fixing extract behavior of Zend\Form\Element\Collection

If the initial target element object gets overwritten with the current one for extracting the values, the original object gets corrupted and the last one extracted stays in. This means that maybe for later hydrating a completely new object (think of the allowAdd option) the values from the last extracted one get transferred to the new one. In case of active record objects with object states (e.g. isNew) this could lead to unwanted and hard to debug behavior.
Therefore cloning the target element and work on the cloned one for extracting is the more appropriate approach imo. The original targetElements objects stays intact this way.