Sweden-Number/dlls/win32u
Rémi Bernon 39fea6cd1e win32u: Guard font unused_entry against race condition.
There is a race condition otherwise between release_gdi_font and
find_cached_gdi_font, leading to invalid memory access:

One thread calling release_gdi_font may decrement refcount to 0,
then try to enter font_lock. At the same time, another thread may be
calling find_cached_gdi_font through select_font, holding the font_lock.

This second thread would find refcount set to 0, and then try to remove
unused_entry from its list, although it hasn't been added yet to the
unused list.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
..
dibdrv
tests win32u: Move NtUserRemoveProp implementation from user32. 2021-11-08 17:32:52 +01:00
Makefile.in win32u: Move NtUserAttachThreadInput implementation from user32. 2021-11-16 17:44:42 +01:00
bitblt.c
bitmap.c
brush.c
clipboard.c win32u: Move NtUserGetOpenClipboardWindow implementation from user32. 2021-11-16 17:44:42 +01:00
clipping.c
dc.c
dib.c
driver.c win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00
emfdrv.c
font.c win32u: Guard font unused_entry against race condition. 2021-11-19 18:31:38 +01:00
freetype.c
gdiobj.c win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00
input.c win32u: Move NtUserGetMouseMovePointsEx implementation from user32. 2021-11-17 15:26:57 +01:00
main.c
mapping.c
ntgdi_private.h win32u: Use user_driver_funcs to pass driver to __wine_set_display_driver. 2021-11-11 18:39:48 +01:00
opentype.c win32u: Use 7-bit ascii for unhandled encodings. 2021-11-08 11:43:04 +01:00
painting.c win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00
palette.c
path.c
pen.c
printdrv.c
region.c win32u: Don't use free_region in alloc_region. 2021-11-08 17:32:55 +01:00
syscall.c win32u: Move NtUserGetMouseMovePointsEx implementation from user32. 2021-11-17 15:26:57 +01:00
vertical.c
vulkan.c
win32u.spec win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00
win32u_private.h win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00
window.c win32u: Move NtUserRemoveProp implementation from user32. 2021-11-08 17:32:52 +01:00
winstation.c
wrappers.c win32u: Move NtUserScrollDC implementation from user32. 2021-11-17 15:27:03 +01:00