Annotation of 43BSDTahoe/new/X/Xlib/XGetColCells.c, revision 1.1

1.1     ! root        1: #include <X/mit-copyright.h>
        !             2: 
        !             3: /* $Header: XGetColCells.c,v 10.5 86/04/22 15:30:25 jg Rel $ */
        !             4: /* Copyright    Massachusetts Institute of Technology    1985  */
        !             5: 
        !             6: #include "XlibInternal.h"
        !             7: Status XGetColorCells (contig, ncolors, nplanes, planes, pixels)
        !             8:        int contig;
        !             9:        int ncolors;
        !            10:        int nplanes;
        !            11:        int *planes;
        !            12:        register int pixels[];
        !            13: {
        !            14:        register Display *dpy;
        !            15:        register XReq *req;
        !            16:        XRep rep;
        !            17: 
        !            18:        GetReq (X_GetColorCells, 0);
        !            19:        req->func = contig;
        !            20:        req->params0 = ncolors;
        !            21:        req->params1 = nplanes;
        !            22:        if (!_XReply (dpy, &rep)) {
        !            23:            *planes = 0;
        !            24:            return (0);
        !            25:            }
        !            26:        *planes = rep.paramu0;
        !            27:        if (!ncolors)
        !            28:            return (1);
        !            29: 
        !            30:        /* "pixels" is an array of ints, but the protocol
        !            31:         * returns an array of shorts.  Therefore data must be copied. */
        !            32:        {
        !            33:        register int i;
        !            34:        int nbytes = ncolors*2;
        !            35: #ifdef BIGSHORTS
        !            36:        register ushort_p *proto_pixels = (ushort_p *) malloc (nbytes);
        !            37:        _XReadPad (dpy, (char *)proto_pixels, nbytes);
        !            38:        UnpackShorts(proto_pixels, (short *)pixels, nbytes);
        !            39: #else
        !            40:        register u_short *proto_pixels = (u_short *) malloc (nbytes);
        !            41:        _XReadPad (dpy, proto_pixels, nbytes);
        !            42:        for (i=0;i<ncolors;i++)
        !            43:            pixels[i] = proto_pixels[i];
        !            44: #endif
        !            45:        free ((char *)proto_pixels);
        !            46:        return (1);
        !            47:        }
        !            48: }
        !            49: 

unix.superglobalmegacorp.com

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