X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FLibraries%2Flibaxwin4.so_src%2Fwm.cpp;h=7ce61e4b1bb70fd360255cfd1a28bd13c39b2b9c;hb=7cbd63bd08b7a25dece2589403e330751a8ce2ef;hp=fdfa32c29c26ac231a0ad13ec93a396af82617b0;hpb=f3bdde1ff0ec3cf20c1371a50eb37a0907fe00c5;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libaxwin4.so_src/wm.cpp b/Usermode/Libraries/libaxwin4.so_src/wm.cpp index fdfa32c2..7ce61e4b 100644 --- a/Usermode/Libraries/libaxwin4.so_src/wm.cpp +++ b/Usermode/Libraries/libaxwin4.so_src/wm.cpp @@ -97,6 +97,18 @@ extern "C" void AxWin4_SetTitle(tAxWin4_Window *Window, const char *Title) ::AxWin::SendMessage(message); } +extern "C" void AxWin4_DamageRect(tAxWin4_Window *Window, unsigned int X, unsigned int Y, unsigned int W, unsigned int H) +{ + CSerialiser message; + message.WriteU8(IPCMSG_DAMAGERECT); + message.WriteU16(Window->m_id); + message.WriteU16(X); + message.WriteU16(Y); + message.WriteU16(W); + message.WriteU16(H); + ::AxWin::SendMessage(message); +} + extern "C" void *AxWin4_GetWindowBuffer(tAxWin4_Window *Window) { if( Window->m_fd == -1 ) @@ -106,8 +118,11 @@ extern "C" void *AxWin4_GetWindowBuffer(tAxWin4_Window *Window) req.WriteU16(Window->m_id); CDeserialiser response = GetSyncReply(req, IPCMSG_GETWINBUF); - if( response.ReadU16() != Window->m_id ) { - + unsigned int rspwin = response.ReadU16(); + if( rspwin != Window->m_id ) + { + _SysDebug("AxWin4_GetWindowBuffer: GETWINBUF reply for different window (%u != %u)", rspwin, Window->m_id); + return NULL; } uint64_t handle = response.ReadU64();