mirror of https://github.com/mpv-player/mpv
5d9aa72f25
console.lua uses "terminal-default" logging, which is supposed to return all messages logged to the terminal to the API. Internally, this is translated to MP_LOG_BUFFER_MSGL_TERM, which is MSGL_MAX+1, because it's not an actual log level (blame C for not having proper sum types or something). Unfortunately, this unintentionally raised the internal log level to MSGL_MAX+1. It still functioned as intended, because log messages were simply filtered at a "later" point. But it led to every message being formatted even if not needed. More importantly, it made mp_msg_test() pointless (code calls this to avoid logging in "expensive" cases and if the messages would just get discarded). Also, this broke libplacebo logging, because the code to map the log messages did not expect a level higher than MSGL_MAX (mp_msg_level() returned MSGL_MAX+1 too). Fix this by not letting the dummy level value be used as log level. Messages at terminal log level will always make it to the inner log message dispatcher function (i.e. mp_msg_va() will call write_msg_to_buffers()), so log buffers which use the dummy log level don't need to adjust the actual log level at all. |
||
---|---|---|
.. | ||
av_common.c | ||
av_common.h | ||
av_log.c | ||
av_log.h | ||
codecs.c | ||
codecs.h | ||
common.c | ||
common.h | ||
encode.h | ||
encode_lavc.c | ||
encode_lavc.h | ||
global.h | ||
msg.c | ||
msg.h | ||
msg_control.h | ||
playlist.c | ||
playlist.h | ||
recorder.c | ||
recorder.h | ||
tags.c | ||
tags.h | ||
version.c |