Back to Provenance

3431

.changelog/3431.md

3.3.11.3 KB
Original Source

Added

  • Dolphin Netplay: Input Buffer Size — Wire Config::NETPLAY_INPUT_BUFFER_SIZE so that NetplaySettings.frameDelay is applied to Dolphin's emulation engine immediately after a session starts.
  • Dolphin Netplay: Traversal Code Query — Implement queryDolphinTraversalCode() on the ObjC bridge so the hosting UI can surface the relay code for out-of-band sharing; the code is stored in NetplayRoom.traversalCode and also reflected in NetplayRoom.hostAddress for traversal-hosted sessions.

Fixed

  • Dolphin Netplay: dolphinTraversalCode stub — Replaced the empty stub (always returned nil) with a live query via NetPlayServer::GetInterfaceListToSend() guarded by the traversal-client availability check.
  • Dolphin Netplay: C++ exception handling@try/@catch (NSException *) blocks in startNetplayHostOnPort: and joinNetplayHost: replaced with C++ try { } catch (const std::exception &) blocks; @try/@catch only catches ObjC exceptions and would silently swallow C++ exceptions thrown by Dolphin's constructors.
  • Dolphin Netplay: Thread safetyqueryDolphinTraversalCode, dolphinNetplayStatus, and stopNetplay all use @synchronized(self) to prevent use-after-free races where a concurrent stop could reset the server pointer while another read was in progress.