diff options
author | lat9nq <lat9nq@gmail.com> | 2022-03-07 03:37:54 -0500 |
---|---|---|
committer | lat9nq <lat9nq@gmail.com> | 2022-03-07 18:21:56 -0500 |
commit | b5e60ae1b0568d6c9e47134dd2bda70906a2dad9 (patch) | |
tree | 93c23176ccbc92e7340262a7279edbe2f3888d1c /src/common/bit_util.h | |
parent | 1f24a4e520004d48799a27b159432aa0b8634628 (diff) |
video_core: Cancel Scoped's exit call on GPU failure
When CreateRenderer fails, the GraphicsContext that was std::move'd into
it is destroyed before the Scoped that was created to manage its
currency. In that case, the GraphicsContext::Scoped will still call its
destructor at the ending of the function. And because the context is
destroyed, the Scoped will cause a crash as it attempts to call a
destroyed object's DoneCurrent function.
Since we know when the call would be invalid, call the Scoped's Cancel
method. This prevents it from calling a method on a destroyed object.
Diffstat (limited to 'src/common/bit_util.h')
0 files changed, 0 insertions, 0 deletions