Corrected ISteamNetworkingMessages, that was having wrong prototype

This commit is contained in:
SeaFood 2023-07-24 08:34:21 +02:00
parent a3124e504e
commit 9ae6342620
2 changed files with 8 additions and 8 deletions

View File

@ -25,10 +25,12 @@ namespace Steamworks
#region FunctionMeta #region FunctionMeta
[DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_SendMessageToUser", CallingConvention = Platform.CC)] [DllImport( Platform.LibraryName, EntryPoint = "SteamAPI_ISteamNetworkingMessages_SendMessageToUser", CallingConvention = Platform.CC)]
private static extern Result _SendMessageToUser( IntPtr self, ref NetIdentity identityRemote, [In,Out] IntPtr[] pubData, uint cubData, int nSendFlags, int nRemoteChannel ); //private static extern Result _SendMessageToUser( IntPtr self, ref NetIdentity identityRemote, [In,Out] IntPtr[] pubData, uint cubData, int nSendFlags, int nRemoteChannel );
private static extern Result _SendMessageToUser( IntPtr self, ref NetIdentity identityRemote, IntPtr pubData, uint cubData, int nSendFlags, int nRemoteChannel );
#endregion #endregion
internal Result SendMessageToUser( ref NetIdentity identityRemote, [In,Out] IntPtr[] pubData, uint cubData, int nSendFlags, int nRemoteChannel ) internal Result SendMessageToUser( ref NetIdentity identityRemote, IntPtr pubData, uint cubData, int nSendFlags, int nRemoteChannel )
//internal Result SendMessageToUser( ref NetIdentity identityRemote, [In,Out] IntPtr[] pubData, uint cubData, int nSendFlags, int nRemoteChannel )
{ {
var returnValue = _SendMessageToUser( Self, ref identityRemote, pubData, cubData, nSendFlags, nRemoteChannel ); var returnValue = _SendMessageToUser( Self, ref identityRemote, pubData, cubData, nSendFlags, nRemoteChannel );
return returnValue; return returnValue;

View File

@ -52,9 +52,7 @@ namespace Steamworks
uint length = (uint)data.Length; uint length = (uint)data.Length;
fixed ( byte* p = data ) fixed ( byte* p = data )
{ {
IntPtr[] pubData = new IntPtr[] { (IntPtr)p }; return Internal.SendMessageToUser( ref identity, (IntPtr)p, length, (int)flags, channel );
return Internal.SendMessageToUser( ref identity, pubData, length, (int)flags, channel );
} }
} }
@ -105,9 +103,9 @@ namespace Steamworks
{ {
try try
{ {
byte[] bytes = new byte[msg->DataSize]; byte[] data = new byte[msg->DataSize];
Marshal.Copy(msg->DataPtr, bytes, 0, msg->DataSize); Marshal.Copy( msg->DataPtr, data, 0, msg->DataSize );
callback( bytes, msg->DataSize, msg->RecvTime, msg->MessageNumber, msg->Channel ); callback( data, msg->DataSize, msg->RecvTime, msg->MessageNumber, msg->Channel );
} }
finally finally
{ {