microsoft / D3D12TranslationLayer

A library containing utilities for mapping higher-level graphics work to D3D12
MIT License
327 stars 47 forks source link

Removed noexcept from SubmitCommandList and WaitForFenceValue #65

Closed sivileri closed 2 years ago

sivileri commented 2 years ago

Fix for cases where exceptions are "escaping" a stack trace with a no-except method in between when calling SubmitCommandList

For example:

void VideoDecode::DecodeFrame is calling inline void ImmediateContext::SubmitCommandList(COMMAND_LIST_TYPE commandListType) noexcept and this delegates to (different namespace, same fn name) void CommandListManager::SubmitCommandList() ... throw in CloseCommandList(...)

Removed noexcept from SubmitCommandList and WaitForFenceValue. Adapted noexcept callers of this functions to convert the possible exceptions to appropiate return values