mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-05 13:30:02 -05:00
fix more compile errors
Avoid void * arithmetic Do explicit casts to target type to make c++ happy
This commit is contained in:
parent
3fa2ad33e4
commit
b0f4be5fbc
26 changed files with 175 additions and 159 deletions
|
|
@ -529,7 +529,7 @@ write_pod (struct spa_pod_builder *b, const void *data, uint32_t size)
|
|||
if (b->data == NULL)
|
||||
return -1;
|
||||
}
|
||||
memcpy (b->data + ref, data, size);
|
||||
memcpy (SPA_MEMBER(b->data, ref, void), data, size);
|
||||
return ref;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -852,7 +852,7 @@ do_port_use_buffers(struct impl *impl,
|
|||
|
||||
mb[i].buffer = &b->buffer;
|
||||
mb[i].mem_id = b->memid;
|
||||
mb[i].offset = SPA_PTRDIFF(baseptr, mem->ptr + mem->offset);
|
||||
mb[i].offset = SPA_PTRDIFF(baseptr, SPA_MEMBER(mem->ptr, mem->offset, void));
|
||||
mb[i].size = data_size;
|
||||
|
||||
for (j = 0; j < buffers[i]->n_metas; j++)
|
||||
|
|
|
|||
|
|
@ -361,7 +361,7 @@ static uint32_t write_pod(struct spa_pod_builder *b, const void *data, uint32_t
|
|||
b->size = SPA_ROUND_UP_N(ref + size, 4096);
|
||||
b->data = begin_write(&impl->this, b->size);
|
||||
}
|
||||
memcpy(b->data + ref, data, size);
|
||||
memcpy(SPA_MEMBER(b->data, ref, void), data, size);
|
||||
|
||||
return ref;
|
||||
}
|
||||
|
|
@ -493,7 +493,7 @@ int pw_protocol_native_connection_flush(struct pw_protocol_native_connection *co
|
|||
outfds);
|
||||
|
||||
size -= sent;
|
||||
data += sent;
|
||||
data = SPA_MEMBER(data, sent, void);
|
||||
n_fds -= outfds;
|
||||
fds += outfds;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -491,7 +491,7 @@ static int alloc_buffers(struct pw_link *this,
|
|||
m->type = metas[j].type;
|
||||
m->size = metas[j].size;
|
||||
m->data = p;
|
||||
p += m->size;
|
||||
p = SPA_MEMBER(p, m->size, void);
|
||||
}
|
||||
/* pointer to data structure */
|
||||
b->n_datas = n_datas;
|
||||
|
|
@ -514,7 +514,7 @@ static int alloc_buffers(struct pw_link *this,
|
|||
d->chunk->offset = 0;
|
||||
d->chunk->size = 0;
|
||||
d->chunk->stride = data_strides[j];
|
||||
ddp += data_sizes[j];
|
||||
ddp = SPA_MEMBER(ddp, data_sizes[j], void);
|
||||
} else {
|
||||
/* needs to be allocated by a node */
|
||||
d->type = SPA_ID_INVALID;
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ int pw_memblock_map(struct pw_memblock *mem)
|
|||
prot |= PROT_WRITE;
|
||||
|
||||
if (mem->flags & PW_MEMBLOCK_FLAG_MAP_TWICE) {
|
||||
void *ptr;
|
||||
void *ptr, *wrap;
|
||||
|
||||
mem->ptr =
|
||||
mmap(NULL, mem->size << 1, PROT_NONE, MAP_ANONYMOUS | MAP_PRIVATE, -1,
|
||||
|
|
@ -128,10 +128,12 @@ int pw_memblock_map(struct pw_memblock *mem)
|
|||
return -ENOMEM;
|
||||
}
|
||||
|
||||
wrap = SPA_MEMBER(mem->ptr, mem->size, void);
|
||||
|
||||
ptr =
|
||||
mmap(mem->ptr + mem->size, mem->size, prot, MAP_FIXED | MAP_SHARED,
|
||||
mmap(wrap, mem->size, prot, MAP_FIXED | MAP_SHARED,
|
||||
mem->fd, mem->offset);
|
||||
if (ptr != mem->ptr + mem->size) {
|
||||
if (ptr != wrap) {
|
||||
munmap(mem->ptr, mem->size << 1);
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
|
@ -280,7 +282,7 @@ struct pw_memblock * pw_memblock_find(const void *ptr)
|
|||
struct memblock *m;
|
||||
|
||||
spa_list_for_each(m, &_memblocks, link) {
|
||||
if (ptr >= m->mem.ptr && ptr < m->mem.ptr + m->mem.size)
|
||||
if (ptr >= m->mem.ptr && ptr < SPA_MEMBER(m->mem.ptr, m->mem.size, void))
|
||||
return &m->mem;
|
||||
}
|
||||
return NULL;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue