yuzu/src/video_core
ReinUsesLisp f6cb128eac shader_cache: Fix use-after-free and orphan invalidation cache entries
This fixes some cases where entries could have been removed multiple
times reading freed memory. To address this issue this commit removes
duplicates from entries marked for removal and sorts out the removal
process to fix another use-after-free situation.

Another issue fixed in this commit is orphan invalidation cache entries.
Previously only the entries that were invalidated in the current
operations had its entries removed. This led to more use-after-free
situations when these entries were actually invalidated but referenced
an object that didn't exist.
2020-07-01 18:16:53 -03:00
..
buffer_cache buffer_cache: Use buffer methods instead of cache virtual methods 2020-06-24 02:36:14 -03:00
engines Merge pull request #4147 from ReinUsesLisp/hset2-imm 2020-06-26 23:14:56 -04:00
macro macro: Add support for "middle methods" on the code cache (#4112) 2020-06-30 02:32:24 -03:00
renderer_opengl Merge pull request #4157 from ReinUsesLisp/unified-turing 2020-06-30 14:36:51 -04:00
renderer_vulkan Merge pull request #4191 from Morph1984/vertex-formats 2020-06-30 03:30:00 -03:00
shader Merge pull request #4147 from ReinUsesLisp/hset2-imm 2020-06-26 23:14:56 -04:00
texture_cache Merge pull request #4176 from ReinUsesLisp/compatible-formats 2020-06-30 15:36:13 -04:00
textures
CMakeLists.txt video_core/compatible_formats: Table to test if two formats are legal to view or copy 2020-06-26 19:28:11 -03:00
compatible_formats.cpp texture_cache: Test format compatibility before copying 2020-06-26 20:52:22 -03:00
compatible_formats.h video_core/compatible_formats: Table to test if two formats are legal to view or copy 2020-06-26 19:28:11 -03:00
dirty_flags.cpp
dirty_flags.h
dma_pusher.cpp DmaPusher: Remove dead code in step 2020-05-16 12:42:27 +10:00
dma_pusher.h DmaPusher: Remove dead code in step 2020-05-16 12:42:27 +10:00
fence_manager.h
gpu_asynch.cpp General: Correct rebase, sync gpu and context management. 2020-06-27 11:36:08 -04:00
gpu_asynch.h General: Correct rebase, sync gpu and context management. 2020-06-27 11:36:08 -04:00
gpu_synch.cpp General: Correct rebase, sync gpu and context management. 2020-06-27 11:36:08 -04:00
gpu_synch.h General: Correct rebase, sync gpu and context management. 2020-06-27 11:36:08 -04:00
gpu_thread.cpp General: Tune the priority of main emulation threads so they have higher priority than less important helper threads. 2020-06-27 11:36:09 -04:00
gpu_thread.h
gpu.cpp General: Recover Prometheus project from harddrive failure 2020-06-27 11:35:06 -04:00
gpu.h General: Correct rebase, sync gpu and context management. 2020-06-27 11:36:08 -04:00
guest_driver.cpp
guest_driver.h
memory_manager.cpp memory_manager: Eliminate variable shadowing 2020-06-19 22:02:58 -04:00
memory_manager.h memory_manager: Eliminate variable shadowing 2020-06-19 22:02:58 -04:00
morton.cpp
morton.h
query_cache.h Rename PAGE_SHIFT to PAGE_BITS 2020-06-18 15:47:43 +01:00
rasterizer_accelerated.cpp
rasterizer_accelerated.h
rasterizer_interface.h
renderer_base.cpp
renderer_base.h
sampler_cache.cpp
sampler_cache.h
shader_cache.h shader_cache: Fix use-after-free and orphan invalidation cache entries 2020-07-01 18:16:53 -03:00
surface.cpp
surface.h
video_core.cpp
video_core.h