mirror of
https://github.com/X11Libre/xserver.git
synced 2026-04-14 17:18:09 +00:00
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:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user