How to reproduce:
1. Create a new Unity project and install the Multiplayer Services package
2. Link the project to a Unity Cloud project ID in Project Settings -> Services
3. Import the attached "Repro" Script and attach it to any GameObject
4. Enter Play Mode
5. Observe the Console
Expected results: A "SessionException" error is thrown naming the invalid argument, as JoinSessionByCodeAsync and CreateSessionAsync do
Actual results: "SessionException: Object reference not set to an instance of an object" error is thrown, leaking a NullReferenceException message as the exception text
Reproducible with: 2.3.1 (6000.5.9f1)
Reproducible on: Ubuntu 24.04.4 LTS, macOS Tahoe 26 (M1)
Not reproducible on: No other environment tested
Note: The sibling methods validate their arguments correctly - JoinSessionByCodeAsync("") throws "Argument should be non-null, non-empty & not only whitespaces. Parameter name: lobbyCode" and CreateSessionAsync(null) throws "Missing session options."
First lines of error:
SessionException: Object reference not set to an instance of an object