Example #1
0
CPDF_Object* CPDF_Array::CloneNonCyclic(
    bool bDirect,
    std::set<const CPDF_Object*>* pVisited) const {
  pVisited->insert(this);
  CPDF_Array* pCopy = new CPDF_Array();
  for (size_t i = 0; i < GetCount(); i++) {
    CPDF_Object* value = m_Objects[i];
    if (!pdfium::ContainsKey(*pVisited, value))
      pCopy->m_Objects.push_back(value->CloneNonCyclic(bDirect, pVisited));
  }
  return pCopy;
}