Annotation of researchv9/X11/src/X.V11R1/lib/X/XFetchName.c, revision 1.1.1.1

1.1       root        1: #include "copyright.h"
                      2: 
                      3: /* $Header: XFetchName.c,v 11.18 87/09/01 14:47:27 toddb Exp $ */
                      4: /* Copyright    Massachusetts Institute of Technology    1986  */
                      5: 
                      6: #include <stdio.h>
                      7: #include "Xlibint.h"
                      8: #include "Xatom.h"
                      9: #include <strings.h>
                     10: 
                     11: 
                     12: Status XFetchName (dpy, w, name)
                     13:     register Display *dpy;
                     14:     Window w;
                     15:     char **name;
                     16: {
                     17:     Atom actual_type;
                     18:     int actual_format;
                     19:     unsigned long nitems;
                     20:     long leftover;
                     21:     unsigned char *data = NULL;
                     22:     if (XGetWindowProperty(dpy, w, XA_WM_NAME, 0L, (long)BUFSIZ, False, XA_STRING, 
                     23:        &actual_type,
                     24:        &actual_format, &nitems, &leftover, &data) != Success) {
                     25:         *name = NULL;
                     26:        return (0);
                     27:        }
                     28:     if ( (actual_type == XA_STRING) &&  (actual_format == 8) ) {
                     29: 
                     30:        /* The data returned by XGetWindowProperty is guarranteed to
                     31:        contain one extra byte that is null terminated to make retrieveing
                     32:        string properties easy. */
                     33: 
                     34:        *name = (char *)data;
                     35:        return(1);
                     36:        }
                     37:     if (data) Xfree ((char *)data);
                     38:     *name = NULL;
                     39:     return(0);
                     40: }
                     41: 
                     42: Status XGetIconName (dpy, w, icon_name)
                     43:     register Display *dpy;
                     44:     Window w;
                     45:     char **icon_name;
                     46: {
                     47:     Atom actual_type;
                     48:     int actual_format;
                     49:     unsigned long nitems;
                     50:     long leftover;
                     51:     unsigned char *data = NULL;
                     52:     if (XGetWindowProperty(dpy, w, XA_WM_ICON_NAME, 0L, (long)BUFSIZ, False,
                     53:         XA_STRING, 
                     54:        &actual_type,
                     55:        &actual_format, &nitems, &leftover, &data) != Success) {
                     56:         *icon_name = NULL;
                     57:        return (0);
                     58:        }
                     59:     if ( (actual_type == XA_STRING) &&  (actual_format == 8) ) {
                     60: 
                     61:        /* The data returned by XGetWindowProperty is guarranteed to
                     62:        contain one extra byte that is null terminated to make retrieveing
                     63:        string properties easy. */
                     64: 
                     65:        *icon_name = (char*)data;
                     66:        return(1);
                     67:        }
                     68:     if (data) Xfree ((char *)data);
                     69:     *icon_name = NULL;
                     70:     return(0);
                     71: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.