Implement orphaned sections
[centaur.git] / src / model / fromFile.c
index fd6aba0b83586f8810a5c8c73cbc0515a80d9b4e..cb0935270d355a26f01f369ad348fa2d4ce14c99 100644 (file)
@@ -167,6 +167,7 @@ ElfuElf* elfu_mFromElf(Elf *e)
   /* General stuff */
   CIRCLEQ_INIT(&me->scnList);
   CIRCLEQ_INIT(&me->phdrList);
+  CIRCLEQ_INIT(&me->orphanScnList);
   me->shstrtab = NULL;
 
   me->elfclass = gelf_getclass(e);
@@ -286,6 +287,8 @@ ElfuElf* elfu_mFromElf(Elf *e)
 
       if (parent) {
         CIRCLEQ_INSERT_TAIL(&parent->childScnList, ms, elemChildScn);
+      } else {
+        CIRCLEQ_INSERT_TAIL(&me->orphanScnList, ms, elemChildScn);
       }
     }