summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/ntvfs/posix/pvfs_wait.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source4/ntvfs/posix/pvfs_wait.c b/source4/ntvfs/posix/pvfs_wait.c
index 3d0bb465e3..e21b5766cb 100644
--- a/source4/ntvfs/posix/pvfs_wait.c
+++ b/source4/ntvfs/posix/pvfs_wait.c
@@ -61,14 +61,20 @@ static void pvfs_wait_dispatch(struct messaging_context *msg, void *private, uin
{
struct pvfs_wait *pwait = private;
struct ntvfs_request *req;
+ void *p = NULL;
/* we need to check that this one is for us. See
messaging_send_ptr() for the other side of this.
*/
- if (data->length != sizeof(void *) ||
- *(void **)data->data != pwait->private) {
+ if (data->length == sizeof(void *)) {
+ void **pp;
+ pp = (void **)data->data;
+ p = *pp;
+ }
+ if (p == NULL || p != pwait->private) {
return;
}
+
pwait->reason = PVFS_WAIT_EVENT;
req = pwait->req;