From 44e8a4085e74675598635089677c47524348d75f Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 26 May 2014 21:53:20 +0200 Subject: x11: fix datatype for _NET_WM_PID Setting this property was added 12 years ago, and the code was always incorrect. The underlying data type is "long", not "pid_t". It's well possible that the data types are different, and the pointer to the pid variable is directly passed to XChangeProperty, possibly invoking undefined behavior. It's funny, because in theory using pid_t for PIDs sounds more correct. --- video/out/x11_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'video') diff --git a/video/out/x11_common.c b/video/out/x11_common.c index 5d2a5b1fec..37855efa4e 100644 --- a/video/out/x11_common.c +++ b/video/out/x11_common.c @@ -573,7 +573,7 @@ static void vo_x11_classhint(struct vo *vo, Window window, const char *name) struct mp_vo_opts *opts = vo->opts; struct vo_x11_state *x11 = vo->x11; XClassHint wmClass; - pid_t pid = getpid(); + long pid = getpid(); wmClass.res_name = opts->winname ? opts->winname : (char *)name; wmClass.res_class = "mpv"; -- cgit v1.2.3