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

1.1       root        1: #include "copyright.h"
                      2: 
                      3: /* $Header: XDrPoint.c,v 11.8 87/09/11 08:10:07 toddb Exp $ */
                      4: /* Copyright    Massachusetts Institute of Technology    1986  */
                      5: 
                      6: #include "Xlibint.h"
                      7: 
                      8: /* precompute the maximum size of batching request allowed */
                      9: 
                     10: static int size = sizeof(xPolyPointReq) + EPERBATCH * sizeof(xPoint);
                     11: 
                     12: XDrawPoint(dpy, d, gc, x, y)
                     13:     register Display *dpy;
                     14:     Drawable d;
                     15:     GC gc;
                     16:     int x, y; /* INT16 */
                     17: {
                     18:     xPoint *point;
                     19:     LockDisplay(dpy);
                     20:     FlushGC(dpy, gc);
                     21:     {
                     22:     register xPolyPointReq *req = (xPolyPointReq *) dpy->last_req;
                     23:     /* if same as previous request, with same drawable, batch requests */
                     24:     if (
                     25:           (req->reqType == X_PolyPoint)
                     26:        && (req->drawable == d)
                     27:        && (req->gc == gc->gid)
                     28:        && (req->coordMode == CoordModeOrigin)
                     29:        && ((dpy->bufptr + sizeof (xPoint)) <= dpy->bufmax)
                     30:        && (((char *)dpy->bufptr - (char *)req) < size) ) {
                     31:          point = (xPoint *) dpy->bufptr;
                     32:         req->length += sizeof (xPoint) >> 2;
                     33:         dpy->bufptr += sizeof (xPoint);
                     34:         }
                     35: 
                     36:     else {
                     37:        GetReqExtra(PolyPoint, 4, req); /* 1 point = 4 bytes */
                     38:        req->drawable = d;
                     39:        req->gc = gc->gid;
                     40:        req->coordMode = CoordModeOrigin;
                     41:        point = (xPoint *) (req + 1);
                     42:        }
                     43:     point->x = x;
                     44:     point->y = y;
                     45:     }
                     46:     UnlockDisplay(dpy);
                     47:     SyncHandle();
                     48: }
                     49: 

unix.superglobalmegacorp.com

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