Create a "reentrant" manifest parser this gives a 10% boost of pkg update performances
modified libpkg/pkg.h.in
@@ -82,6 +82,7 @@ struct pkg_config_value;
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -801,9 +802,12 @@ int pkg_delannotation(struct pkg *pkg, const char *tag);
|
|
|
|
|
|
| + | |
|
|
|
|
|
|
| + | |
| + | |
|
|
|
|
|
modified libpkg/pkg_manifest.c
@@ -127,6 +127,39 @@ struct pkg_manifest_key {
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
@@ -823,6 +856,23 @@ pkg_parse_manifest(struct pkg *pkg, char *buf, struct pkg_manifest_key *keys)
|
|
|
|
|
|
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
| + | |
|
|
|
|
|
modified libpkg/update.c
@@ -367,7 +367,7 @@ pkg_update_full(const char *repofile, struct pkg_repo *repo, time_t *mtime)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
@@ -388,7 +388,8 @@ pkg_add_from_manifest(FILE *f, const char *origin, long offset,
|
|
|
|
|
|
| - | |
| + | |
| + | |
|
|
|
|
|
@@ -458,6 +459,7 @@ pkg_update_incremental(const char *name, struct pkg_repo *repo, time_t *mtime)
|
|
|
|
|
|
| + | |
|
|
|
|
|
@@ -555,13 +557,14 @@ pkg_update_incremental(const char *name, struct pkg_repo *repo, time_t *mtime)
|
|
|
|
|
|
| - | |
| + | |
|
|
|
|
|
|
|
|
|
|
|
|
| + | |
|
|
|
|
|