the post handler is run to mark the retrieved message as correct.
Also change the post handler to only mark the number of bytes actually
returned as defined, rather than the whole buffer.
Fixes #238679.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11133
LINXY(__NR_mq_open, sys_mq_open), // 240
LINX_(__NR_mq_unlink, sys_mq_unlink), // 241
LINX_(__NR_mq_timedsend, sys_mq_timedsend), // 242
- LINX_(__NR_mq_timedreceive, sys_mq_timedreceive),// 243
+ LINXY(__NR_mq_timedreceive, sys_mq_timedreceive),// 243
LINX_(__NR_mq_notify, sys_mq_notify), // 244
LINXY(__NR_mq_getsetattr, sys_mq_getsetattr), // 245
}
POST(sys_mq_timedreceive)
{
- POST_MEM_WRITE( ARG2, ARG3 );
+ POST_MEM_WRITE( ARG2, RES );
if (ARG4 != 0)
POST_MEM_WRITE( ARG4, sizeof(unsigned int) );
}
LINX_(__NR_mq_unlink, sys_mq_unlink), // 263
LINX_(__NR_mq_timedsend, sys_mq_timedsend), // 264
- LINX_(__NR_mq_timedreceive, sys_mq_timedreceive), // 265
+ LINXY(__NR_mq_timedreceive, sys_mq_timedreceive), // 265
LINX_(__NR_mq_notify, sys_mq_notify), // 266
LINXY(__NR_mq_getsetattr, sys_mq_getsetattr), // 267
// _____(__NR_kexec_load, sys_kexec_load), // 268