Passing a parameter by reference for an RPC does not seem to be a supported operation, and UnrealHeaderTool will already throw an error if a networked UFUNCTION includes any OutParms. However, users can still select the "Pass-By-Reference" checkbox for inputs to replicated blueprint events, creating RPCs with OutParms. There is some handling for OutParms in the NetDriver with NetDriverInternal::CopyOutParametersToLocalParameters, but if an input to a multicast RPC has "Pass-By-Reference" checked, this can  lead to memory issues and crashes if the RPC is sent to more than one client.

Steps to Reproduce

See linked UDN with repro project

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-130854 in the post.

Login to Vote

ComponentUE - Networking
Target Fix5.0
Fix Commit18361274
Main Commit18361274
CreatedOct 6, 2021
ResolvedDec 2, 2021
UpdatedFeb 18, 2022