diff --git a/src/misc/objects.c b/src/misc/objects.c index 945ebffbc6b3c82cf05d50e0ec6971655847332f..bb634f6d415ce75f5f3463e86ff86967875a941e 100644 --- a/src/misc/objects.c +++ b/src/misc/objects.c @@ -62,75 +62,6 @@ static struct vlc_list tree_list = VLC_LIST_INITIALIZER(&tree_list); vlc_list_foreach(pos, &tree_list, list) \ if (pos->parent == vlc_externals(priv)) -static bool ObjectIsLastChild(vlc_object_t *obj, vlc_object_t *parent) -{ - struct vlc_list *node = &vlc_internals(obj)->list; - - while ((node = node->next) != &tree_list) { - vlc_object_internals_t *priv = - container_of(node, vlc_object_internals_t, list); - - if (priv->parent == parent) - return false; - } - return true; -} - -static bool ObjectHasChildLocked(vlc_object_t *obj) -{ - vlc_object_internals_t *priv; - - vlc_children_foreach(priv, vlc_internals(obj)) - return true; - return false; -} - -static void PrintObjectPrefix(vlc_object_t *obj, FILE *output, bool last) -{ - vlc_object_t *parent = vlc_object_parent(obj); - const char *str; - - if (parent == NULL) - return; - - PrintObjectPrefix(parent, output, false); - - if (ObjectIsLastChild(obj, parent)) - str = last ? " \xE2\x94\x94" : " "; - else - str = last ? " \xE2\x94\x9C" : " \xE2\x94\x82"; - - fputs(str, output); -} - -static void PrintObject(vlc_object_t *obj, FILE *output) -{ - int canc = vlc_savecancel (); - - PrintObjectPrefix(obj, output, true); - fprintf(output, "\xE2\x94\x80\xE2\x94%c\xE2\x95\xB4%p %s\n", - ObjectHasChildLocked(obj) ? 0xAC : 0x80, - (void *)obj, vlc_object_typename(obj)); - - vlc_restorecancel (canc); -} - -void DumpStructureLocked(vlc_object_t *obj, FILE *output, unsigned level) -{ - PrintObject(obj, output); - - if (unlikely(level > 100)) - { - msg_Warn (obj, "structure tree is too deep"); - return; - } - - vlc_object_internals_t *priv; - - vlc_children_foreach(priv, vlc_internals(obj)) - DumpStructureLocked(vlc_externals(priv), output, level + 1); -} - #undef vlc_custom_create void *vlc_custom_create (vlc_object_t *parent, size_t length, const char *typename) diff --git a/src/misc/variables.h b/src/misc/variables.h index a9f2f4dbc22bb9ef3565e6b33bd982ada6545c02..2acd7d41580c19ca41360bd22a42b96f5c9814b4 100644 --- a/src/misc/variables.h +++ b/src/misc/variables.h @@ -55,7 +55,6 @@ struct vlc_object_internals # define vlc_externals( priv ) ((vlc_object_t *)((priv) + 1)) void DumpVariables(vlc_object_t *obj); -void DumpStructureLocked(vlc_object_t *obj, FILE *output, unsigned level); extern void var_DestroyAll( vlc_object_t * );