mirror of
https://github.com/SapphireServer/Sapphire.git
synced 2025-05-05 02:07:46 +00:00
raw packet data contains an ipc header, not segment
This commit is contained in:
parent
24615759ce
commit
57c1f66310
1 changed files with 5 additions and 5 deletions
|
@ -180,13 +180,13 @@ public:
|
||||||
|
|
||||||
FFXIVIpcPacket< T, T1 >( const FFXIVARR_PACKET_RAW& rawPacket )
|
FFXIVIpcPacket< T, T1 >( const FFXIVARR_PACKET_RAW& rawPacket )
|
||||||
{
|
{
|
||||||
auto segHdrSize = sizeof( FFXIVARR_PACKET_SEGMENT_HEADER );
|
auto ipcHdrSize = sizeof( FFXIVARR_IPC_HEADER );
|
||||||
auto copySize = std::min< uint32_t >( sizeof( T ), rawPacket.segHdr.size - segHdrSize );
|
auto copySize = std::min< uint32_t >( sizeof( T ), rawPacket.segHdr.size - ipcHdrSize );
|
||||||
|
|
||||||
memcpy( &m_segHdr, &rawPacket.segHdr, segHdrSize );
|
memcpy( &m_segHdr, &rawPacket.segHdr, sizeof( FFXIVARR_PACKET_SEGMENT_HEADER ) );
|
||||||
memcpy( &m_data, &rawPacket.data[0] + segHdrSize, copySize );
|
memcpy( &m_data, &rawPacket.data[0] + ipcHdrSize, copySize );
|
||||||
|
|
||||||
memset( &m_ipcHdr, 0, sizeof( FFXIVARR_IPC_HEADER ) );
|
memset( &m_ipcHdr, 0, ipcHdrSize );
|
||||||
m_ipcHdr.type = static_cast< ServerZoneIpcType >( m_data._ServerIpcType );
|
m_ipcHdr.type = static_cast< ServerZoneIpcType >( m_data._ServerIpcType );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue