lib/repo: Add ostree_repo_traverse_commit_union_with_parents
This is a version of ostree_repo_traverse_commit_union that also remembers where the objects came from, by recording the parent relationships in a hashtable. This can be used to later find which commits each object was from, which we want to use in fsck. Closes: #1533 Approved by: cgwalters
This commit is contained in:
1 parent
cdaf7cd838
commit
f258e9e5ff
4 files changed
+195
-14
No files matched your search
@@ -1112,6 +1112,12 @@ gboolean ostree_repo_static_delta_execute_offline (OstreeRepo
|
||||
_OSTREE_PUBLIC
|
||||
GHashTable *ostree_repo_traverse_new_reachable (void);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
GHashTable *ostree_repo_traverse_new_parents (void);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
char ** ostree_repo_traverse_parents_get_commits (GHashTable *parents, GVariant *object);
|
||||
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_repo_traverse_commit (OstreeRepo *repo,
|
||||
const char *commit_checksum,
|
||||
@@ -1127,6 +1133,14 @@ gboolean ostree_repo_traverse_commit_union (OstreeRepo *repo,
|
||||
GHashTable *inout_reachable,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
_OSTREE_PUBLIC
|
||||
gboolean ostree_repo_traverse_commit_union_with_parents (OstreeRepo *repo,
|
||||
const char *commit_checksum,
|
||||
int maxdepth,
|
||||
GHashTable *inout_reachable,
|
||||
GHashTable *inout_parents,
|
||||
GCancellable *cancellable,
|
||||
GError **error);
|
||||
|
||||
struct _OstreeRepoCommitTraverseIter {
|
||||
gboolean initialized;
|
||||
|
||||
Reference in new issue
Block a user