Annotation of 43BSD/contrib/X/Xlib/XPending.c, revision 1.1

1.1     ! root        1: #include <X/mit-copyright.h>
        !             2: 
        !             3: /* $Header: XPending.c,v 10.4 86/02/01 15:37:51 tony Rel $ */
        !             4: /* Copyright    Massachusetts Institute of Technology    1985  */
        !             5: 
        !             6: #include "XlibInternal.h"
        !             7: 
        !             8: /* Read in any pending events and return the number of queued events. */
        !             9: 
        !            10: int XPending ()
        !            11: {
        !            12:        register int len;
        !            13:        int pend;
        !            14:        char buf[BUFSIZE];
        !            15:        register XRep *rep;
        !            16:        register Display *dpy = _XlibCurrentDisplay;
        !            17:        
        !            18:        _XFlush (dpy);
        !            19:        if (ioctl(dpy->fd, FIONREAD, &pend) < 0)
        !            20:            _XIOError(dpy);
        !            21:        if ((len = pend) < sizeof(XRep))
        !            22:            return(dpy->qlen);
        !            23:        else if (len > BUFSIZE)
        !            24:            len = BUFSIZE;
        !            25:        len /= sizeof(XRep);
        !            26:        pend = len * sizeof(XRep);
        !            27:        _XRead (dpy, buf, pend);
        !            28:        for (rep = (XRep *) buf; len > 0; rep++, len--) {
        !            29:            if (rep->code == X_Error)
        !            30:                _XError(dpy, (XErrorEvent *)rep);
        !            31:            else   /* must be an event packet */
        !            32:                _XEnq(dpy, (XEvent *) rep);
        !            33:        }
        !            34:        return(dpy->qlen);
        !            35: }
        !            36: 

unix.superglobalmegacorp.com

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