From adad89dc0e74d85e996048768a3c6d9e99405190 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 16 Apr 2026 12:11:13 +0200 Subject: [PATCH] add spa_memcpy to more places Use spa_memcpy yo where we memcpy data so that when the debug option is enabled we can see more. --- pipewire-jack/src/pipewire-jack.c | 8 ++++---- pipewire-jack/src/ringbuffer.c | 12 ++++++------ spa/plugins/filter-graph/plugin_ffmpeg.c | 2 +- src/tools/pw-cat.c | 2 +- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index 3d200bd99..79717e126 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -1767,7 +1767,7 @@ static inline void process_empty(struct port *p, uint32_t frames) case TYPE_ID_AUDIO: ptr = get_buffer_output(p, frames, sizeof(float), NULL); if (SPA_LIKELY(ptr != NULL)) - memcpy(ptr, src, frames * sizeof(float)); + spa_memcpy(ptr, src, frames * sizeof(float)); break; case TYPE_ID_MIDI: case TYPE_ID_OSC: @@ -1781,7 +1781,7 @@ static inline void process_empty(struct port *p, uint32_t frames) * to do this concurrently */ b->datas[0].chunk->size = convert_from_event(src, midi_scratch, MIDI_SCRATCH_FRAMES * sizeof(float), type); - memcpy(ptr, midi_scratch, b->datas[0].chunk->size); + spa_memcpy(ptr, midi_scratch, b->datas[0].chunk->size); } break; } @@ -5850,11 +5850,11 @@ static void *get_buffer_input_midi(struct port *p, jack_nframes_t frames) * the per port buffer. This makes it possible to call this function concurrently * but also have different pointers per port */ convert_to_event(mix_info, n_mix_info, mb, p->client->fix_midi_events, p->object->port.type_id); - memcpy(ptr, mb, sizeof(struct midi_buffer) + (mb->event_count + spa_memcpy(ptr, mb, sizeof(struct midi_buffer) + (mb->event_count * sizeof(struct midi_event))); if (mb->write_pos > 0) { size_t offs = mb->buffer_size - mb->write_pos; - memcpy(SPA_PTROFF(ptr, offs, void), SPA_PTROFF(mb, offs, void), mb->write_pos); + spa_memcpy(SPA_PTROFF(ptr, offs, void), SPA_PTROFF(mb, offs, void), mb->write_pos); } return ptr; } diff --git a/pipewire-jack/src/ringbuffer.c b/pipewire-jack/src/ringbuffer.c index ba1cc23f3..be4014c23 100644 --- a/pipewire-jack/src/ringbuffer.c +++ b/pipewire-jack/src/ringbuffer.c @@ -132,10 +132,10 @@ size_t jack_ringbuffer_read(jack_ringbuffer_t *rb, char *dest, size_t cnt) n2 = 0; } - memcpy (dest, &(rb->buf[rb->read_ptr]), n1); + spa_memcpy (dest, &(rb->buf[rb->read_ptr]), n1); rb->read_ptr = (rb->read_ptr + n1) & rb->size_mask; if (n2) { - memcpy (dest + n1, &(rb->buf[rb->read_ptr]), n2); + spa_memcpy (dest + n1, &(rb->buf[rb->read_ptr]), n2); rb->read_ptr = (rb->read_ptr + n2) & rb->size_mask; } return to_read; @@ -167,11 +167,11 @@ size_t jack_ringbuffer_peek(jack_ringbuffer_t *rb, char *dest, size_t cnt) n2 = 0; } - memcpy (dest, &(rb->buf[tmp_read_ptr]), n1); + spa_memcpy (dest, &(rb->buf[tmp_read_ptr]), n1); tmp_read_ptr = (tmp_read_ptr + n1) & rb->size_mask; if (n2) - memcpy (dest + n1, &(rb->buf[tmp_read_ptr]), n2); + spa_memcpy (dest + n1, &(rb->buf[tmp_read_ptr]), n2); return to_read; } @@ -249,10 +249,10 @@ size_t jack_ringbuffer_write(jack_ringbuffer_t *rb, const char *src, n2 = 0; } - memcpy (&(rb->buf[rb->write_ptr]), src, n1); + spa_memcpy (&(rb->buf[rb->write_ptr]), src, n1); rb->write_ptr = (rb->write_ptr + n1) & rb->size_mask; if (n2) { - memcpy (&(rb->buf[rb->write_ptr]), src + n1, n2); + spa_memcpy (&(rb->buf[rb->write_ptr]), src + n1, n2); rb->write_ptr = (rb->write_ptr + n2) & rb->size_mask; } return to_write; diff --git a/spa/plugins/filter-graph/plugin_ffmpeg.c b/spa/plugins/filter-graph/plugin_ffmpeg.c index 4e4b9f4a0..86001c0fd 100644 --- a/spa/plugins/filter-graph/plugin_ffmpeg.c +++ b/spa/plugins/filter-graph/plugin_ffmpeg.c @@ -243,7 +243,7 @@ static void ffmpeg_run(void *instance, unsigned long SampleCount) delay); for (j = 0; j < desc->layout[c].nb_channels; j++) - memcpy(i->data[d++], i->frame->data[j], SampleCount * sizeof(float)); + spa_memcpy(i->data[d++], i->frame->data[j], SampleCount * sizeof(float)); av_frame_unref(i->frame); } diff --git a/src/tools/pw-cat.c b/src/tools/pw-cat.c index b87fc2ba8..065cee69c 100644 --- a/src/tools/pw-cat.c +++ b/src/tools/pw-cat.c @@ -389,7 +389,7 @@ static int encoded_playback_fill(struct data *d, void *dest, unsigned int n_fram break; } - memcpy(dest_ptr, packet->data, packet->size); + spa_memcpy(dest_ptr, packet->data, packet->size); accumulated_duration += packet->duration; dest_ptr += packet->size;