From bf02a88599e0e03d822eae3d30afdacd67c98457 Mon Sep 17 00:00:00 2001 From: iovar Date: Sat, 9 Dec 2006 16:55:42 +0000 Subject: Patch for non-compliant window managers, by Andreas Zwinkau git-svn-id: https://recordmydesktop.svn.sourceforge.net/svnroot/recordmydesktop/trunk@227 f606c939-3180-4ac9-a4b8-4b8779d57d0a --- recordmydesktop/src/wm_check.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) (limited to 'recordmydesktop/src/wm_check.c') diff --git a/recordmydesktop/src/wm_check.c b/recordmydesktop/src/wm_check.c index ee6b0ba..ac25efb 100644 --- a/recordmydesktop/src/wm_check.c +++ b/recordmydesktop/src/wm_check.c @@ -29,7 +29,7 @@ char *rmdWMCheck(Display *dpy,Window root){ - Window *wm_child; + Window *wm_child=NULL; Atom nwm_atom, utf8_string, wm_name_atom, @@ -46,21 +46,23 @@ char *rmdWMCheck(Display *dpy,Window root){ wm_name_atom =XInternAtom(dpy,"_NET_WM_NAME",True); if(nwm_atom!=None && wm_name_atom!=None){ - if(!((XGetWindowProperty( dpy,root,nwm_atom,0,100, + if(XGetWindowProperty( dpy,root,nwm_atom,0,100, False,XA_WINDOW, &rt,&fmt,&nitems, &nbytes, (unsigned char **)((void*)&wm_child)) - ==Success ) && - (XGetWindowProperty( dpy,*wm_child,wm_name_atom,0,100, + != Success ){ + fprintf(stderr,"Error while trying to get a window to identify the window manager.\n"); + } + if((wm_child == NULL) || (XGetWindowProperty( dpy,*wm_child,wm_name_atom,0,100, False,utf8_string,&rt, &fmt,&nitems, &nbytes, (unsigned char **)((void*)&wm_name_str)) - ==Success ))){ + != Success )){ fprintf(stderr,"Warning!!!\nYour window manager appears to be non-compliant!\n"); } } fprintf(stderr,"Your window manager appears to be %s\n\n", - ((wm_name_str!=NULL)?wm_name_str:"Uknown")); + ((wm_name_str!=NULL)?wm_name_str:"Unknown")); return wm_name_str; -- cgit v1.2.1