sync with OpenBSD -current

This commit is contained in:
purplerain 2025-01-10 01:40:29 +00:00
parent 4b49aefbb1
commit 1fd36b57f8
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
945 changed files with 81965 additions and 59988 deletions

View file

@ -1250,6 +1250,7 @@ FindBestPixel(EntryPtr pentFirst, int size, xrgb * prgb, int channel)
case PSEUDOMAP:
dg = (long) pent->co.local.green - prgb->green;
db = (long) pent->co.local.blue - prgb->blue;
/* fallthrough */
case REDMAP:
dr = (long) pent->co.local.red - prgb->red;
break;

View file

@ -2714,7 +2714,7 @@ GetPairedDevice(DeviceIntPtr dev)
if (!IsMaster(dev) && !IsFloating(dev))
dev = GetMaster(dev, MASTER_ATTACHED);
return dev->spriteInfo? dev->spriteInfo->paired: NULL;
return (dev && dev->spriteInfo) ? dev->spriteInfo->paired: NULL;
}
/**

View file

@ -1352,18 +1352,18 @@ int
PolyText(ClientPtr client, DrawablePtr pDraw, GC * pGC, unsigned char *pElt,
unsigned char *endReq, int xorg, int yorg, int reqType, XID did)
{
PTclosureRec local_closure;
local_closure.pElt = pElt;
local_closure.endReq = endReq;
local_closure.client = client;
local_closure.pDraw = pDraw;
local_closure.xorg = xorg;
local_closure.yorg = yorg;
local_closure.reqType = reqType;
local_closure.pGC = pGC;
local_closure.did = did;
local_closure.err = Success;
PTclosureRec local_closure = {
.client = client,
.pDraw = pDraw,
.pGC = pGC,
.pElt = pElt,
.endReq = endReq,
.xorg = xorg,
.yorg = yorg,
.reqType = reqType,
.did = did,
.err = Success
};
(void) doPolyText(client, &local_closure);
return Success;
@ -1687,7 +1687,8 @@ SetFontPath(ClientPtr client, int npaths, unsigned char *paths)
int bad;
err = SetFontPathElements(npaths, paths, &bad, FALSE);
client->errorValue = bad;
if (err != Success)
client->errorValue = bad;
}
return err;
}

View file

@ -619,15 +619,20 @@ FixDeviceValuator(DeviceIntPtr dev, deviceValuator * ev, ValuatorClassPtr v,
ev->first_valuator = first;
switch (ev->num_valuators) {
case 6:
ev->valuator2 = v->axisVal[first + 5];
ev->valuator5 = v->axisVal[first + 5];
/* fallthrough */
case 5:
ev->valuator2 = v->axisVal[first + 4];
ev->valuator4 = v->axisVal[first + 4];
/* fallthrough */
case 4:
ev->valuator2 = v->axisVal[first + 3];
ev->valuator3 = v->axisVal[first + 3];
/* fallthrough */
case 3:
ev->valuator2 = v->axisVal[first + 2];
/* fallthrough */
case 2:
ev->valuator1 = v->axisVal[first + 1];
/* fallthrough */
case 1:
ev->valuator0 = v->axisVal[first];
break;
@ -666,8 +671,10 @@ FixDeviceStateNotify(DeviceIntPtr dev, deviceStateNotify * ev, KeyClassPtr k,
switch (ev->num_valuators) {
case 3:
ev->valuator2 = v->axisVal[first + 2];
/* fallthrough */
case 2:
ev->valuator1 = v->axisVal[first + 1];
/* fallthrough */
case 1:
ev->valuator0 = v->axisVal[first];
break;

View file

@ -683,6 +683,8 @@ eventToDeviceEvent(DeviceEvent *ev, xEvent **xi)
len += vallen * 4; /* valuators mask */
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
xde = (xXIDeviceEvent *) * xi;
xde->type = GenericEvent;
xde->extension = IReqCode;
@ -751,6 +753,8 @@ eventToTouchOwnershipEvent(TouchOwnershipEvent *ev, xEvent **xi)
xXITouchOwnershipEvent *xtoe;
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
xtoe = (xXITouchOwnershipEvent *) * xi;
xtoe->type = GenericEvent;
xtoe->extension = IReqCode;
@ -781,6 +785,8 @@ eventToRawEvent(RawDeviceEvent *ev, xEvent **xi)
len += vallen * 4; /* valuators mask */
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
raw = (xXIRawEvent *) * xi;
raw->type = GenericEvent;
raw->extension = IReqCode;
@ -816,6 +822,8 @@ eventToBarrierEvent(BarrierEvent *ev, xEvent **xi)
int len = sizeof(xXIBarrierEvent);
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
barrier = (xXIBarrierEvent*) *xi;
barrier->type = GenericEvent;
barrier->extension = IReqCode;
@ -845,6 +853,8 @@ eventToGesturePinchEvent(GestureEvent *ev, xEvent **xi)
xXIGesturePinchEvent *xpe;
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
xpe = (xXIGesturePinchEvent *) * xi;
xpe->type = GenericEvent;
xpe->extension = IReqCode;
@ -887,6 +897,8 @@ eventToGestureSwipeEvent(GestureEvent *ev, xEvent **xi)
xXIGestureSwipeEvent *xde;
*xi = calloc(1, len);
if (*xi == NULL)
return BadAlloc;
xde = (xXIGestureSwipeEvent *) * xi;
xde->type = GenericEvent;
xde->extension = IReqCode;

View file

@ -811,7 +811,8 @@ CreateScratchGC(ScreenPtr pScreen, unsigned depth)
FreeGC(pGC, (XID) 0);
pGC = (GCPtr) NULL;
}
pGC->graphicsExposures = FALSE;
else
pGC->graphicsExposures = FALSE;
return pGC;
}

View file

@ -276,11 +276,13 @@ dixChangeWindowProperty(ClientPtr pClient, WindowPtr pWin, Atom property,
if (!pProp)
return BadAlloc;
data = malloc(totalSize);
if (!data && len) {
dixFreeObjectWithPrivates(pProp, PRIVATE_PROPERTY);
return BadAlloc;
if (totalSize) {
if (!data) {
dixFreeObjectWithPrivates(pProp, PRIVATE_PROPERTY);
return BadAlloc;
}
memcpy(data, value, totalSize);
}
memcpy(data, value, totalSize);
pProp->propertyName = property;
pProp->type = type;
pProp->format = format;
@ -313,9 +315,11 @@ dixChangeWindowProperty(ClientPtr pClient, WindowPtr pWin, Atom property,
if (mode == PropModeReplace) {
data = malloc(totalSize);
if (!data && len)
return BadAlloc;
memcpy(data, value, totalSize);
if (totalSize) {
if (!data)
return BadAlloc;
memcpy(data, value, totalSize);
}
pProp->data = data;
pProp->size = len;
pProp->type = type;
@ -585,17 +589,20 @@ ProcListProperties(ClientPtr client)
for (pProp = wUserProps(pWin); pProp; pProp = pProp->next)
numProps++;
if (numProps && !(pAtoms = xallocarray(numProps, sizeof(Atom))))
return BadAlloc;
if (numProps) {
pAtoms = xallocarray(numProps, sizeof(Atom));
if (!pAtoms)
return BadAlloc;
numProps = 0;
temppAtoms = pAtoms;
for (pProp = wUserProps(pWin); pProp; pProp = pProp->next) {
realProp = pProp;
rc = XaceHookPropertyAccess(client, pWin, &realProp, DixGetAttrAccess);
if (rc == Success && realProp == pProp) {
*temppAtoms++ = pProp->propertyName;
numProps++;
numProps = 0;
temppAtoms = pAtoms;
for (pProp = wUserProps(pWin); pProp; pProp = pProp->next) {
realProp = pProp;
rc = XaceHookPropertyAccess(client, pWin, &realProp, DixGetAttrAccess);
if (rc == Success && realProp == pProp) {
*temppAtoms++ = pProp->propertyName;
numProps++;
}
}
}
@ -609,8 +616,8 @@ ProcListProperties(ClientPtr client)
if (numProps) {
client->pSwapReplyFunc = (ReplySwapPtr) Swap32Write;
WriteSwappedDataToClient(client, numProps * sizeof(Atom), pAtoms);
free(pAtoms);
}
free(pAtoms);
return Success;
}

View file

@ -143,6 +143,7 @@ InitPredictableAccelerationScheme(DeviceIntPtr dev,
schemeData->vel = vel;
scheme.accelData = schemeData;
if (!InitializePredictableAccelerationProperties(dev, vel, schemeData)) {
FreeVelocityData(vel);
free(vel);
free(schemeData);
return FALSE;

View file

@ -683,7 +683,7 @@ HashResourceID(XID id, unsigned int numBits)
id &= mask;
if (numBits < 9)
return (id ^ (id >> numBits) ^ (id >> (numBits<<1))) & ~((~0U) << numBits);
return (id ^ (id >> numBits)) & ~((~0) << numBits);
return (id ^ (id >> numBits)) & ~((~0U) << numBits);
}
static XID