improve appdata.xml parsing
[platform/upstream/libsolv.git] / src / dirpool.c
index 85197e4..5f08361 100644 (file)
@@ -26,7 +26,7 @@
  *   dirs[id] <= 0 : -(parent directory id)
  *
  * Directories with the same parent are stored as
- * multiple blocks. We need multiple blocks, because
+ * multiple blocks. We need multiple blocks because
  * we cannot insert entries into old blocks, as that
  * would shift the ids of already used directories.
  * Each block starts with (-parent_dirid) and contains
@@ -37,7 +37,7 @@
  * There is also the aux "dirtraverse" array, which
  * is created on demand to speed things up a bit.
  * if dirs[id] > 0, dirtravers[id] points to the first
- * entry in the last block with parent id
+ * entry in the last block with parent id.
  * if dirs[id] <= 0, dirtravers[id] points to the entry
  * in the previous block with the same parent.
  * (Thus it acts as a linked list that starts at the
  * parent.)
  *
  *  id    dirs[id]  dirtraverse[id]
- *   0     0           8       [block#0 no parent]
+ *   0     0           8       [no parent, block#0]
  *   1    ""           3
- *   2    -1                   [block#0 parent 1, /]
+ *   2    -1                   [parent 1, /, block #0]
  *   3    "usr"       12
- *   4    -3                   [block#0 parent 3, /usr]
+ *   4    -3                   [parent 3, /usr, block #0]
  *   5    "bin"
  *   6    "lib"
- *   7     0           1       [block#1 no parent]
+ *   7     0           1       [no parent, block#1]
  *   8    "foo"       10
- *   9    -8                   [block#0 parent 8, foo]
+ *   9    -8                   [parent 8, foo, block #0]
  *  10    "bar"
- *  11    -3           5       [block#1 parent 3, /usr]
+ *  11    -3           5       [parent 3, /usr, block #1]
  *  12    "games"
- *   
- * to find all children of dirid 3, "/usr", follow the
+ *
+ * to find all children of dirid 3 ("/usr"), follow the
  * dirtraverse link to 12 -> "games". Then follow the
  * dirtraverse link of this block to 5 -> "bin", "lib"
  */
@@ -73,8 +73,8 @@ dirpool_init(Dirpool *dp)
 void
 dirpool_free(Dirpool *dp)
 {
-  sat_free(dp->dirs);
-  sat_free(dp->dirtraverse);
+  solv_free(dp->dirs);
+  solv_free(dp->dirtraverse);
 }
 
 void
@@ -83,8 +83,8 @@ dirpool_make_dirtraverse(Dirpool *dp)
   Id parent, i, *dirtraverse;
   if (!dp->ndirs)
     return;
-  dp->dirs = sat_extend_resize(dp->dirs, dp->ndirs, sizeof(Id), DIR_BLOCK);
-  dirtraverse = sat_calloc_block(dp->ndirs, sizeof(Id), DIR_BLOCK);
+  dp->dirs = solv_extend_resize(dp->dirs, dp->ndirs, sizeof(Id), DIR_BLOCK);
+  dirtraverse = solv_calloc_block(dp->ndirs, sizeof(Id), DIR_BLOCK);
   for (parent = 0, i = 0; i < dp->ndirs; i++)
     {
       if (dp->dirs[i] > 0)
@@ -106,7 +106,7 @@ dirpool_add_dir(Dirpool *dp, Id parent, Id comp, int create)
       if (!create)
        return 0;
       dp->ndirs = 2;
-      dp->dirs = sat_extend_resize(dp->dirs, dp->ndirs, sizeof(Id), DIR_BLOCK);
+      dp->dirs = solv_extend_resize(dp->dirs, dp->ndirs, sizeof(Id), DIR_BLOCK);
       dp->dirs[0] = 0;
       dp->dirs[1] = 1; /* "" */
     }
@@ -141,16 +141,16 @@ dirpool_add_dir(Dirpool *dp, Id parent, Id comp, int create)
   if (dp->dirs[did] != -parent)
     {
       /* make room for parent entry */
-      dp->dirs = sat_extend(dp->dirs, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
-      dp->dirtraverse = sat_extend(dp->dirtraverse, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
+      dp->dirs = solv_extend(dp->dirs, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
+      dp->dirtraverse = solv_extend(dp->dirtraverse, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
       /* new parent block, link in */
       dp->dirs[dp->ndirs] = -parent;
       dp->dirtraverse[dp->ndirs] = dp->dirtraverse[parent];
       dp->dirtraverse[parent] = ++dp->ndirs;
     }
   /* make room for new entry */
-  dp->dirs = sat_extend(dp->dirs, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
-  dp->dirtraverse = sat_extend(dp->dirtraverse, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
+  dp->dirs = solv_extend(dp->dirs, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
+  dp->dirtraverse = solv_extend(dp->dirtraverse, dp->ndirs, 1, sizeof(Id), DIR_BLOCK);
   dp->dirs[dp->ndirs] = comp;
   dp->dirtraverse[dp->ndirs] = 0;
   return dp->ndirs++;