X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=name.c;h=80ce5d5b36a6a2bff20d35b3e9d124506f95ea02;hp=f29ce2298bbf3f73d2f203deb4b3f22cd71b5c06;hb=a66d02c3290008d50b2b52f84cfbf46a546ba831;hpb=4609154d5513108478f603ff1589e486c001daa9 diff --git a/name.c b/name.c index f29ce2298..80ce5d5b3 100644 --- a/name.c +++ b/name.c @@ -112,7 +112,6 @@ static void bidi_set_free(Name *name, Set *s) { Name *other; assert(name); - assert(s); /* Frees the set and makes sure we are dropped from the * inverse pointers */ @@ -360,3 +359,31 @@ int name_merge(Name *name, Name *other) { return 0; } + +const char* name_id(Name *n) { + assert(n); + + return set_first(n->meta.names); +} + +void name_dump(Name *n, FILE *f) { + + static const char* const state_table[_NAME_STATE_MAX] = { + [NAME_STUB] = "STUB", + [NAME_LOADED] = "LOADED", + [NAME_FAILED] = "FAILED" + }; + + assert(n); + + fprintf(stderr, + "Name %s (%s), state %s\n", + name_id(n), + n->meta.description ? n->meta.description : name_id(n), + state_table[n->meta.state]); + + if (n->meta.job) { + fprintf(f, "\t▶ "); + job_dump(n->meta.job, f); + } +}