Merge pull request #88 from HomerSp/fix-hwdevice-destroyed-before-ctx

Fix hwdevice being destroyed before context causing sigsegv on AMD
This commit is contained in:
ReenigneArcher 2022-03-13 16:50:30 -04:00 committed by GitHub
commit ea27955b16
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -327,6 +327,11 @@ public:
session_t(ctx_t &&ctx, std::shared_ptr<platf::hwdevice_t> &&device, int inject) : ctx { std::move(ctx) }, device { std::move(device) }, inject { inject } {}
session_t(session_t &&other) noexcept = default;
~session_t() {
// Order matters here because the context relies on the hwdevice still being valid
ctx.reset();
device.reset();
}
// Ensure objects are destroyed in the correct order
session_t &operator=(session_t &&other) {