Comments (2)
When building with MSVC's address sanitizer, I get an immediate heap-use-after-free
when doing an immediate right mouse button -> left mouse button.
=================================================================
==24944==ERROR: AddressSanitizer: heap-use-after-free on address 0x119bfea39288 at pc 0x7ffc3860ea6a bp 0x001d2756d4d0 sp 0x001d2756d4d8
READ of size 8 at 0x119bfea39288 thread T0
#0 0x7ffc3860ea69 in SDL_UpdateMouseCapture C:\projects\SDL\src\events\SDL_mouse.c:1433
#1 0x7ffc38617093 in SDL_PrivateSendMouseButton C:\projects\SDL\src\events\SDL_mouse.c:1043
#2 0x7ffc3860f362 in SDL_SendMouseButton C:\projects\SDL\src\events\SDL_mouse.c:1057
#3 0x7ffc389e6818 in WIN_CheckWParamMouseButton C:\projects\SDL\src\video\windows\SDL_windowsevents.c:235
#4 0x7ffc389e69e7 in WIN_CheckWParamMouseButtons C:\projects\SDL\src\video\windows\SDL_windowsevents.c:253
#5 0x7ffc389dfbdc in WIN_WindowProc C:\projects\SDL\src\video\windows\SDL_windowsevents.c:1169
#6 0x7ffca2e6ef5b (C:\WINDOWS\System32\USER32.dll+0x18000ef5b)
#7 0x7ffca2e6e683 (C:\WINDOWS\System32\USER32.dll+0x18000e683)
#8 0x7ffc389e5aad in WIN_PumpEvents C:\projects\SDL\src\video\windows\SDL_windowsevents.c:2262
#9 0x7ffc38600eb5 in SDL_PumpEventsInternal C:\projects\SDL\src\events\SDL_events.c:1170
#10 0x7ffc385f8cee in SDL_WaitEventTimeoutNS C:\projects\SDL\src\events\SDL_events.c:1367
#11 0x7ffc385f7654 in SDL_PollEvent_REAL C:\projects\SDL\src\events\SDL_events.c:1221
#12 0x7ffc385dfbf3 in SDL_PollEvent C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:651
#13 0x7ff7511a1c8d in loop C:\projects\SDL\test\testpopup.c:148
#14 0x7ff7511a123a in SDL_main C:\projects\SDL\test\testpopup.c:276
#15 0x7ffc389cf8e2 in SDL_RunApp_REAL C:\projects\SDL\src\main\windows\SDL_sysmain_runapp.c:88
#16 0x7ffc385ebdf4 in SDL_RunApp_DEFAULT C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#17 0x7ffc385e2cef in SDL_RunApp C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#18 0x7ff7511a127f in main C:\projects\SDL\include\SDL3\SDL_main_impl.h:98
#19 0x7ff7511b98a8 in invoke_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
#20 0x7ff7511b97fd in __scrt_common_main_seh D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
#21 0x7ff7511b96bd in __scrt_common_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:330
#22 0x7ff7511b991d in mainCRTStartup D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:16
#23 0x7ffca2b27373 (C:\WINDOWS\System32\KERNEL32.DLL+0x180017373)
#24 0x7ffca35bcc90 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x18004cc90)
0x119bfea39288 is located 72 bytes inside of 440-byte region [0x119bfea39240,0x119bfea393f8)
freed by thread T0 here:
#0 0x7ffc22c80062 (C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\clang_rt.asan_dbg_dynamic-x86_64.dll+0x180050062)
#1 0x7ffc387c0cb3 in real_free C:\projects\SDL\src\stdlib\SDL_malloc.c:5191
#2 0x7ffc387c074d in SDL_free_REAL C:\projects\SDL\src\stdlib\SDL_malloc.c:5340
#3 0x7ffc38953a19 in SDL_DestroyWindow_REAL C:\projects\SDL\src\video\SDL_video.c:4157
#4 0x7ffc385dcf83 in SDL_DestroyWindow C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:151
#5 0x7ff7511a1b0b in close_popups C:\projects\SDL\test\testpopup.c:128
#6 0x7ff7511a2003 in loop C:\projects\SDL\test\testpopup.c:166
#7 0x7ff7511a123a in SDL_main C:\projects\SDL\test\testpopup.c:276
#8 0x7ffc389cf8e2 in SDL_RunApp_REAL C:\projects\SDL\src\main\windows\SDL_sysmain_runapp.c:88
#9 0x7ffc385ebdf4 in SDL_RunApp_DEFAULT C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#10 0x7ffc385e2cef in SDL_RunApp C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#11 0x7ff7511a127f in main C:\projects\SDL\include\SDL3\SDL_main_impl.h:98
#12 0x7ff7511b98a8 in invoke_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
#13 0x7ff7511b97fd in __scrt_common_main_seh D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
#14 0x7ff7511b96bd in __scrt_common_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:330
#15 0x7ff7511b991d in mainCRTStartup D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:16
#16 0x7ffca2b27373 (C:\WINDOWS\System32\KERNEL32.DLL+0x180017373)
#17 0x7ffca35bcc90 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x18004cc90)
previously allocated by thread T0 here:
#0 0x7ffc22c7fede (C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\HostX64\x64\clang_rt.asan_dbg_dynamic-x86_64.dll+0x18004fede)
#1 0x7ffc387c0c5d in real_calloc C:\projects\SDL\src\stdlib\SDL_malloc.c:5189
#2 0x7ffc387c066f in SDL_calloc_REAL C:\projects\SDL\src\stdlib\SDL_malloc.c:5306
#3 0x7ffc3894879d in SDL_CreateWindowWithProperties_REAL C:\projects\SDL\src\video\SDL_video.c:2384
#4 0x7ffc38947d15 in SDL_CreatePopupWindow_REAL C:\projects\SDL\src\video\SDL_video.c:2502
#5 0x7ffc385dc581 in SDL_CreatePopupWindow C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:113
#6 0x7ff7511a172f in create_popup C:\projects\SDL\test\testpopup.c:104
#7 0x7ff7511a20b1 in loop C:\projects\SDL\test\testpopup.c:170
#8 0x7ff7511a123a in SDL_main C:\projects\SDL\test\testpopup.c:276
#9 0x7ffc389cf8e2 in SDL_RunApp_REAL C:\projects\SDL\src\main\windows\SDL_sysmain_runapp.c:88
#10 0x7ffc385ebdf4 in SDL_RunApp_DEFAULT C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#11 0x7ffc385e2cef in SDL_RunApp C:\projects\SDL\src\dynapi\SDL_dynapi_procs.h:724
#12 0x7ff7511a127f in main C:\projects\SDL\include\SDL3\SDL_main_impl.h:98
#13 0x7ff7511b98a8 in invoke_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:78
#14 0x7ff7511b97fd in __scrt_common_main_seh D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:288
#15 0x7ff7511b96bd in __scrt_common_main D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl:330
#16 0x7ff7511b991d in mainCRTStartup D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_main.cpp:16
#17 0x7ffca2b27373 (C:\WINDOWS\System32\KERNEL32.DLL+0x180017373)
#18 0x7ffca35bcc90 (C:\WINDOWS\SYSTEM32\ntdll.dll+0x18004cc90)
from sdl.
Fixed, thanks!
from sdl.
Related Issues (20)
- audio_resampleLoss failure in testautomation-no-simd HOT 36
- Suggestion: Remove SDL_SCALEMODE_BEST HOT 1
- GPU documentation unmangling
- Error message is not being freed from memory HOT 5
- GPU: vsync is always enabled HOT 4
- testyuv has incorrect colors when converting to RGB for texture upload HOT 3
- testwm shows no text HOT 3
- GPU: test code needs command line parameters to select GPU driver HOT 1
- GPU: renderer memory leaks HOT 3
- GPU: D3D12 resource memory management
- wiki problem, SDL_SetAudioStreamGetCallback HOT 1
- Compiler warnings with system locale set to JP. HOT 8
- CI doesn't show memory leak call stacks HOT 5
- GPU: Const-ify some API parameters HOT 2
- SDL3: Build fails on macOS HOT 1
- Direct3d12 renderer backend only renders black windows HOT 1
- Names of gpu backends don't match those of the 2d renderer backend HOT 3
- GPU Metal: Remove calloc usages HOT 1
- Nintendo NSO N64 Controller Mapping in Linux
- GPU: API does not follow the SDL3 naming conventions HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sdl.