Revert "Optimize dixLookupPrivate for repeated lookups of the same private."

The patch was wildly unsafe for SIGIO, and made everything full of
crashy crashy fail.

This reverts commit 9b30cc5248.
This commit is contained in:
Daniel Stone 2008-04-18 22:17:53 -07:00
parent ed9dabb47c
commit 60ff56050b

View File

@ -46,20 +46,13 @@ dixAllocatePrivate(PrivateRec **privates, const DevPrivateKey key);
static _X_INLINE pointer
dixLookupPrivate(PrivateRec **privates, const DevPrivateKey key)
{
PrivateRec *rec, *prev;
PrivateRec *rec = *privates;
pointer *ptr;
for (rec = *privates, prev = NULL; rec; prev = rec, rec = rec->next) {
if (rec->key != key)
continue;
if (prev) {
prev->next = rec->next;
rec->next = *privates;
*privates = rec;
}
return rec->value;
while (rec) {
if (rec->key == key)
return rec->value;
rec = rec->next;
}
ptr = dixAllocatePrivate(privates, key);