|
|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T X
Length: 870 (0x366)
Types: TextFile
Names: »XPending.c«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki
└─⟦526ad3590⟧ »EUUGD11/gnu-31mar87/X.V10.R4.tar.Z«
└─⟦2109abc41⟧
└─⟦this⟧ »./X.V10R4/Xlib/XPending.c«
#include <X/mit-copyright.h>
/* $Header: XPending.c,v 10.4 86/02/01 15:37:51 tony Rel $ */
/* Copyright Massachusetts Institute of Technology 1985 */
#include "XlibInternal.h"
/* Read in any pending events and return the number of queued events. */
int XPending ()
{
register int len;
int pend;
char buf[BUFSIZE];
register XRep *rep;
register Display *dpy = _XlibCurrentDisplay;
_XFlush (dpy);
if (ioctl(dpy->fd, FIONREAD, &pend) < 0)
_XIOError(dpy);
if ((len = pend) < sizeof(XRep))
return(dpy->qlen);
else if (len > BUFSIZE)
len = BUFSIZE;
len /= sizeof(XRep);
pend = len * sizeof(XRep);
_XRead (dpy, buf, pend);
for (rep = (XRep *) buf; len > 0; rep++, len--) {
if (rep->code == X_Error)
_XError(dpy, (XErrorEvent *)rep);
else /* must be an event packet */
_XEnq(dpy, (XEvent *) rep);
}
return(dpy->qlen);
}