dix: devPrivates support for PropertyRec.

This commit is contained in:
Eamon Walsh 2007-03-22 10:59:21 -04:00 committed by Eamon Walsh
parent a3296d111d
commit 5486be4898
2 changed files with 6 additions and 0 deletions

View File

@ -281,6 +281,7 @@ ChangeWindowProperty(WindowPtr pWin, Atom property, Atom type, int format,
memmove((char *)data, (char *)value, totalSize); memmove((char *)data, (char *)value, totalSize);
pProp->size = len; pProp->size = len;
pProp->next = pWin->optional->userProps; pProp->next = pWin->optional->userProps;
pProp->devPrivates = NULL;
pWin->optional->userProps = pProp; pWin->optional->userProps = pProp;
} }
else else
@ -383,6 +384,7 @@ DeleteProperty(WindowPtr pWin, Atom propName)
event.u.property.atom = pProp->propertyName; event.u.property.atom = pProp->propertyName;
event.u.property.time = currentTime.milliseconds; event.u.property.time = currentTime.milliseconds;
DeliverEvents(pWin, &event, 1, (WindowPtr)NULL); DeliverEvents(pWin, &event, 1, (WindowPtr)NULL);
dixFreePrivates(pProp->devPrivates);
xfree(pProp->data); xfree(pProp->data);
xfree(pProp); xfree(pProp);
} }
@ -405,6 +407,7 @@ DeleteAllWindowProperties(WindowPtr pWin)
event.u.property.time = currentTime.milliseconds; event.u.property.time = currentTime.milliseconds;
DeliverEvents(pWin, &event, 1, (WindowPtr)NULL); DeliverEvents(pWin, &event, 1, (WindowPtr)NULL);
pNextProp = pProp->next; pNextProp = pProp->next;
dixFreePrivates(pProp->devPrivates);
xfree(pProp->data); xfree(pProp->data);
xfree(pProp); xfree(pProp);
pProp = pNextProp; pProp = pNextProp;
@ -569,6 +572,7 @@ ProcGetProperty(ClientPtr client)
} }
else else
prevProp->next = pProp->next; prevProp->next = pProp->next;
dixFreePrivates(pProp->devPrivates);
xfree(pProp->data); xfree(pProp->data);
xfree(pProp); xfree(pProp);
} }

View File

@ -49,6 +49,7 @@ SOFTWARE.
#define PROPERTYSTRUCT_H #define PROPERTYSTRUCT_H
#include "misc.h" #include "misc.h"
#include "property.h" #include "property.h"
#include "privates.h"
/* /*
* PROPERTY -- property element * PROPERTY -- property element
*/ */
@ -60,6 +61,7 @@ typedef struct _Property {
short format; /* format of data for swapping - 8,16,32 */ short format; /* format of data for swapping - 8,16,32 */
long size; /* size of data in (format/8) bytes */ long size; /* size of data in (format/8) bytes */
pointer data; /* private to client */ pointer data; /* private to client */
PrivateRec *devPrivates;
} PropertyRec; } PropertyRec;
#endif /* PROPERTYSTRUCT_H */ #endif /* PROPERTYSTRUCT_H */