obs-studio/plugins
Seth Williams 16e3faf0d0 win-capture: Fix Vulkan race condition
This race condition is caused when one thread creates a swap chain,
which calls OBS_CreateSwapchainKHR, at the same time another thread
calls OBS_CreateImageView.

OBS_CreateSwapchainKHR allocates swap data, publishes this into the
data->swaps linked list, then initializes it. Meanwhile,
OBS_CreateImageView is iterating the swaps linked list, to see if the
image matches any swap chain images. Due to the order in
OBS_CreateSwapchainKHR, there's no guarantee this data is initialized
so it often ends up running out of bounds on the swap_images array.

The fix is simply to defer the swap data publish to after init.

(cherry picked from commit aa1f2dea84)
2023-11-08 22:35:58 -06:00
..
aja Update translations from Crowdin 2023-10-26 16:24:51 -04:00
coreaudio-encoder Update translations from Crowdin 2023-10-26 16:24:51 -04:00
decklink Update translations from Crowdin 2023-10-26 16:24:51 -04:00
image-source Update translations from Crowdin 2023-10-26 16:24:51 -04:00
linux-alsa Update translations from Crowdin 2023-10-26 16:24:51 -04:00
linux-capture Update translations from Crowdin 2023-10-26 16:24:51 -04:00
linux-jack Update translations from Crowdin 2023-08-13 14:09:15 +00:00
linux-pipewire linux-pipwire: Pass obs_pw_stream to renegotiation callback 2023-10-28 18:03:54 -04:00
linux-pulseaudio Update translations from Crowdin 2023-10-26 16:24:51 -04:00
linux-v4l2 input-v4l2: always use linear alpha blending 2023-10-26 16:24:51 -04:00
mac-avcapture plugins: Remove old macOS version ifdefs 2023-10-28 16:14:25 -04:00
mac-capture plugins: Remove old macOS version ifdefs 2023-10-28 16:14:25 -04:00
mac-syphon Update translations from Crowdin 2023-10-26 16:24:51 -04:00
mac-videotoolbox plugins: Remove old macOS version ifdefs 2023-10-28 16:14:25 -04:00
mac-virtualcam mac-virtualcam: Correct device timer firing rate 2023-10-28 16:14:25 -04:00
obs-browser@e397df52e7 Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-ffmpeg Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-filters libobs,obs-filters: Use common straight alpha math 2023-11-08 22:35:58 -06:00
obs-libfdk Update translations from Crowdin 2023-08-13 14:09:15 +00:00
obs-outputs Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-qsv11 obs-qsv11: Migrate target usage settings 2023-10-28 16:14:25 -04:00
obs-text Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-transitions Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-vst Update translations from Crowdin 2023-10-26 16:24:51 -04:00
obs-webrtc obs-webrtc: Allow non-CBR rate control with WHIP 2023-11-05 13:11:09 -06:00
obs-websocket@4ff109b62b obs-websocket: Update version to 5.3.3 2023-10-26 16:24:51 -04:00
obs-x264 Update translations from Crowdin 2023-10-26 16:24:51 -04:00
oss-audio Update translations from Crowdin 2023-10-26 16:24:51 -04:00
rtmp-services rtmp-services: Remove defunct servers/services 2023-10-28 16:14:25 -04:00
sndio Update translations from Crowdin 2023-10-26 16:24:51 -04:00
text-freetype2 Update translations from Crowdin 2023-10-26 16:24:51 -04:00
vlc-video Update translations from Crowdin 2023-10-26 16:24:51 -04:00
win-capture win-capture: Fix Vulkan race condition 2023-11-08 22:35:58 -06:00
win-dshow Update translations from Crowdin 2023-10-26 16:24:51 -04:00
win-wasapi Revert "win-wasapi: Remove 'BETA' from Application Audio Capture name" 2023-10-28 18:03:54 -04:00
CMakeLists.txt plugins: Update CMake minimum to 3.22 2023-08-05 16:45:46 -07:00