summaryrefslogtreecommitdiff
path: root/src/core
diff options
context:
space:
mode:
authorGravatar FearlessTobi2022-08-27 03:12:12 +0200
committerGravatar FearlessTobi2022-08-27 03:12:12 +0200
commitd92826963ad15415ad18b2b56144e5eafb68ac5f (patch)
treec2d22077de4c06f05b9f549933a3c854c83ebbe1 /src/core
parentcore/acc: Make CheckAvailability use LOG_DEBUG (diff)
downloadyuzu-d92826963ad15415ad18b2b56144e5eafb68ac5f.tar.gz
yuzu-d92826963ad15415ad18b2b56144e5eafb68ac5f.tar.xz
yuzu-d92826963ad15415ad18b2b56144e5eafb68ac5f.zip
core/bsd: Correctly unbind methods in destructor
Prevents yuzu from crashing when the BSD service is created a second time.
Diffstat (limited to 'src/core')
-rw-r--r--src/core/hle/service/sockets/bsd.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/core/hle/service/sockets/bsd.cpp b/src/core/hle/service/sockets/bsd.cpp
index e08c3cb67..cc679cc81 100644
--- a/src/core/hle/service/sockets/bsd.cpp
+++ b/src/core/hle/service/sockets/bsd.cpp
@@ -933,7 +933,11 @@ BSD::BSD(Core::System& system_, const char* name)
933 } 933 }
934} 934}
935 935
936BSD::~BSD() = default; 936BSD::~BSD() {
937 if (auto room_member = room_network.GetRoomMember().lock()) {
938 room_member->Unbind(proxy_packet_received);
939 }
940}
937 941
938BSDCFG::BSDCFG(Core::System& system_) : ServiceFramework{system_, "bsdcfg"} { 942BSDCFG::BSDCFG(Core::System& system_) : ServiceFramework{system_, "bsdcfg"} {
939 // clang-format off 943 // clang-format off