summaryrefslogtreecommitdiffstats
path: root/common
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2017-05-22 18:30:39 +0200
committerwm4 <wm4@nowhere>2017-05-22 18:31:39 +0200
commit25a4d10c8e75d9ff94e843d4951ab1eb2917435e (patch)
treebe6df52ee4965ce2e9583e095c5f22cc70814541 /common
parent5974f575a6ac9c107afa292bd877a73a5221952b (diff)
downloadmpv-25a4d10c8e75d9ff94e843d4951ab1eb2917435e.tar.bz2
mpv-25a4d10c8e75d9ff94e843d4951ab1eb2917435e.tar.xz
player: make sure version information is always included in --log-file
If --log-file was used in config files, this could be missing due to the exact timing when the messages are print, and when the options are applied. Fix this by always dumping the version again when a log file is opened.
Diffstat (limited to 'common')
-rw-r--r--common/msg.c13
-rw-r--r--common/msg_control.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/common/msg.c b/common/msg.c
index 875d933822..cf2bd5c242 100644
--- a/common/msg.c
+++ b/common/msg.c
@@ -537,7 +537,20 @@ void mp_msg_force_stderr(struct mpv_global *global, bool force_stderr)
{
struct mp_log_root *root = global->log->root;
+ pthread_mutex_lock(&mp_msg_lock);
root->force_stderr = force_stderr;
+ pthread_mutex_unlock(&mp_msg_lock);
+}
+
+bool mp_msg_has_log_file(struct mpv_global *global)
+{
+ struct mp_log_root *root = global->log->root;
+
+ pthread_mutex_lock(&mp_msg_lock);
+ bool res = !!root->log_file;
+ pthread_mutex_unlock(&mp_msg_lock);
+
+ return res;
}
void mp_msg_uninit(struct mpv_global *global)
diff --git a/common/msg_control.h b/common/msg_control.h
index 56091fdc2d..4b67190155 100644
--- a/common/msg_control.h
+++ b/common/msg_control.h
@@ -9,6 +9,7 @@ void mp_msg_uninit(struct mpv_global *global);
void mp_msg_update_msglevels(struct mpv_global *global);
void mp_msg_force_stderr(struct mpv_global *global, bool force_stderr);
bool mp_msg_has_status_line(struct mpv_global *global);
+bool mp_msg_has_log_file(struct mpv_global *global);
void mp_msg_flush_status_line(struct mp_log *log);