server: Avoid accessing free'd thread pointers.
Eric Pouech
eric.pouech at wanadoo.fr
Fri Nov 10 07:47:15 CST 2006
>>- the generic issue in the SAFE version, where we still access the
>>cursor after it has been potentially fixed
>>
>>
>
>No, in the SAFE macros we don't, that's the whole point of having
>them.
>
>
>
reading from wine/list.h
#define LIST_FOR_EACH_SAFE(cursor, cursor2, list) \
for ((cursor) = (list)->next, (cursor2) = (cursor)->next; \
(cursor) != (list); \
(cursor) = (cursor2), (cursor2) = (cursor)->next)
well, to me, the "(cursor2) = (cursor)->next" accesses cursor *AFTER* it
has been potentially freed
A+
More information about the wine-devel
mailing list