[vlc-commits] commit: skins2(Linux): _WM_NET_PID requires WM_CLIENT_MACHINE to be set ( Erwan Tulou )
git at videolan.org
git at videolan.org
Mon May 3 15:29:34 CEST 2010
vlc | branch: master | Erwan Tulou <erwan10 at videolan.org> | Mon May 3 15:22:41 2010 +0200| [aa8b54178110b9862105b31836ddec332469c12d] | committer: Erwan Tulou
skins2(Linux): _WM_NET_PID requires WM_CLIENT_MACHINE to be set
code inspired from xcb.c
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=aa8b54178110b9862105b31836ddec332469c12d
---
modules/gui/skins2/x11/x11_window.cpp | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/modules/gui/skins2/x11/x11_window.cpp b/modules/gui/skins2/x11/x11_window.cpp
index f45609c..84b2449 100644
--- a/modules/gui/skins2/x11/x11_window.cpp
+++ b/modules/gui/skins2/x11/x11_window.cpp
@@ -164,6 +164,25 @@ X11Window::X11Window( intf_thread_t *pIntf, GenericWindow &rWindow,
classhint.res_class = (char*) "Vlc";
XSetClassHint( XDISPLAY, m_wnd, &classhint );
+ // initialize WM_CLIENT_MACHINE
+ char* hostname = NULL;
+ long host_name_max = sysconf( _SC_HOST_NAME_MAX );
+ if( host_name_max <= 0 )
+ host_name_max = _POSIX_HOST_NAME_MAX;
+ hostname = new char[host_name_max];
+ if( hostname && gethostname( hostname, host_name_max ) == 0 )
+ {
+ hostname[host_name_max - 1] = '\0';
+
+ XTextProperty textprop;
+ textprop.value = (unsigned char *) hostname;
+ textprop.encoding = XA_STRING;
+ textprop.format = 8;
+ textprop.nitems = strlen( hostname );
+ XSetWMClientMachine( XDISPLAY, m_wnd, &textprop);
+ }
+ delete hostname;
+
// initialize EWMH pid
pid_t pid = getpid();
XChangeProperty( XDISPLAY, m_wnd, NET_WM_PID, XA_CARDINAL, 32,
More information about the vlc-commits
mailing list