Crafter.Graphics/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jorijn van der Graaf 70d9c2c82a
fix(rt): never destroy the static TLASes
RenderingElement3D::tlases was a plain static array, so its buffers
were freed by its static destructor at process exit. The Vulkan driver
and layers are loaded during Device::Initialize, after the array was
constructed, so their own statics are torn down first, and destroying
the buffers then called into freed driver and layer state: every
ray-traced app run with CRAFTER_GRAPHICS_VALIDATION segfaulted on exit
inside the validation layer. TLASHighWaterMark and
TLASInstanceDirtyTracking worked around it by tearing frame 0's TLAS
down by hand before returning.

tlases now refers to an array that is never destroyed, the choice
Device already makes for the device itself, and exit reclaims the
memory. Indexing it is unchanged for callers. The hand teardown in the
two tests goes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 03:03:16 +02:00
..
BLASBuildOptions SPDX license update 2026-07-22 18:09:06 +02:00
DeferredDeletion SPDX license update 2026-07-22 18:09:06 +02:00
FontAdvanceCache SPDX license update 2026-07-22 18:09:06 +02:00
FontAtlasDirtyRect SPDX license update 2026-07-22 18:09:06 +02:00
FrameLoopSync SPDX license update 2026-07-22 18:09:06 +02:00
ImageStagingRelease SPDX license update 2026-07-22 18:09:06 +02:00
InputFieldCaretCache SPDX license update 2026-07-22 18:09:06 +02:00
InputFieldHitTest SPDX license update 2026-07-22 18:09:06 +02:00
MemoryTypeFallback SPDX license update 2026-07-22 18:09:06 +02:00
MeshDecompressStagingRelease SPDX license update 2026-07-22 18:09:06 +02:00
MipChainBarrierBatch SPDX license update 2026-07-22 18:09:06 +02:00
MouseScroll SPDX license update 2026-07-22 18:09:06 +02:00
PipelineCacheValidation SPDX license update 2026-07-22 18:09:06 +02:00
PushConstantRewrite SPDX license update 2026-07-22 18:09:06 +02:00
SetupCmdBufferReuse SPDX license update 2026-07-22 18:09:06 +02:00
ShapeTextCache SPDX license update 2026-07-22 18:09:06 +02:00
SwapchainBarrierScope SPDX license update 2026-07-22 18:09:06 +02:00
TLASBuildBarrier test(rt): BuildTLAS's read barrier makes the build visible to TLAS reads 2026-10-19 03:03:16 +02:00
TLASHighWaterMark fix(rt): never destroy the static TLASes 2026-10-19 03:03:16 +02:00
TLASInstanceDirtyTracking fix(rt): never destroy the static TLASes 2026-10-19 03:03:16 +02:00
UIClipFlag SPDX license update 2026-07-22 18:09:06 +02:00
UIFallbackParity test(ui): the descriptor-set fallback draws the same frame as the heap 2026-10-06 17:28:46 +02:00
UIFusedShader test(ui): the descriptor-set fallback draws the same frame as the heap 2026-10-06 17:28:46 +02:00
UploadStrategy SPDX license update 2026-07-22 18:09:06 +02:00
VulkanBufferFlushGate SPDX license update 2026-07-22 18:09:06 +02:00
VulkanBufferRangedFlush SPDX license update 2026-07-22 18:09:06 +02:00
VulkanBufferResizeReuse SPDX license update 2026-07-22 18:09:06 +02:00