On 11/7/2023 9:58 AM, Anton Khirnov wrote:
--- libavutil/log.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-)diff --git a/libavutil/log.c b/libavutil/log.c index 2d358b7ab9..46662f3db0 100644 --- a/libavutil/log.c +++ b/libavutil/log.c @@ -291,6 +291,11 @@ static const char *get_level_str(int level) } }+static const char *item_name(void *obj, const AVClass *cls)+{ + return (cls->item_name ? cls->item_name : av_default_item_name)(obj); +} + static void format_line(void *avcl, int level, const char *fmt, va_list vl, AVBPrint part[4], int *print_prefix, int type[2]) { @@ -307,12 +312,12 @@ static void format_line(void *avcl, int level, const char *fmt, va_list vl, avc->parent_log_context_offset); if (parent && *parent) { av_bprintf(part+0, "[%s @ %p] ", - (*parent)->item_name(parent), parent); + item_name(parent, *parent), parent); if(type) type[0] = get_category(parent); } } av_bprintf(part+1, "[%s @ %p] ", - avc->item_name(avcl), avcl); + item_name(avcl, avc), avcl); if(type) type[1] = get_category(avcl); }
If this lets us define an AVClass without having to add the item_name = av_default_item_name line, then +1.
Btw, there's also .version that's always set to LIBAVUTIL_VERSION_INT, but that can't be changed as they are compile time constants. What can probably be dropped however are the checks in log.c for runtime major version 50 and 51.
_______________________________________________ ffmpeg-devel mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
