X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin3_src%2FWM%2Fipc.c;h=9cf68e8a87ed7b195325807e96bf6e3a7d95eb37;hb=98bd9c0c8985c50c42231c116a4e18fedd47761e;hp=7155c1155be966617b6111a5494a76c25311d689;hpb=6f00be304598cbaac2ed145f4d2079574717e984;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin3_src/WM/ipc.c b/Usermode/Applications/axwin3_src/WM/ipc.c index 7155c115..9cf68e8a 100644 --- a/Usermode/Applications/axwin3_src/WM/ipc.c +++ b/Usermode/Applications/axwin3_src/WM/ipc.c @@ -471,10 +471,16 @@ void IPC_Handle(tIPC_Client *Client, size_t MsgLen, tAxWin_IPCMessage *Msg) // _SysDebug("IPC_Handle: (IPCType=%p, Ident=%p, MsgLen=%i, Msg=%p)", // IPCType, Ident, MsgLen, Msg); - if( MsgLen < sizeof(tAxWin_IPCMessage) ) + if( MsgLen < sizeof(*Msg) ) { + _SysDebug("IPC_Handle: %p Dropped full undersize message (%i < %i)", + Client, MsgLen, sizeof(*Msg)); return ; - if( MsgLen < sizeof(tAxWin_IPCMessage) + Msg->Size ) + } + if( MsgLen < sizeof(*Msg) + Msg->Size ) { + _SysDebug("IPC_Handle: %p Dropped undersize message (%i < %i+%i)", + Client, MsgLen, sizeof(*Msg), Msg->Size); return ; + } if( Msg->Flags & IPCMSG_FLAG_RENDERER ) {