summaryrefslogtreecommitdiff
path: root/ext/sockets/conversions.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/sockets/conversions.c')
-rw-r--r--ext/sockets/conversions.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/sockets/conversions.c b/ext/sockets/conversions.c
index d81484521d..30e895d97b 100644
--- a/ext/sockets/conversions.c
+++ b/ext/sockets/conversions.c
@@ -910,8 +910,8 @@ static void from_zval_write_control(const zval *arr,
if (space_left < req_space) {
*control_buf = safe_erealloc(*control_buf, 2, req_space, *control_len);
*control_len += 2 * req_space;
- memset(*control_buf, '\0', *control_len - *offset);
- memcpy(&alloc->data, *control_buf, sizeof *control_buf);
+ memset(*control_buf + *offset, '\0', *control_len - *offset);
+ memcpy(&alloc->data, control_buf, sizeof *control_buf);
}
cmsghdr = (struct cmsghdr*)(((char*)*control_buf) + *offset);