1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-30 05:40:06 +00:00
freebsd-ports/audio/jack/files/patch-libjack_port.c
Thomas Zander 8c858f27ae Fix SIGBUS with 24 bit content over OSS output
PR:		234574
Submitted by:	dev@submerge.ch
MFH:		2019Q1
2019-01-03 20:24:30 +00:00

27 lines
709 B
C

--- libjack/port.c.orig 2019-01-02 01:51:31 UTC
+++ libjack/port.c
@@ -630,13 +630,22 @@ jack_port_get_buffer (jack_port_t *port, jack_nframes_
size_t
jack_port_type_buffer_size (jack_port_type_info_t* port_type_info, jack_nframes_t nframes)
{
+ size_t size;
+
if ( port_type_info->buffer_scale_factor < 0 ) {
return port_type_info->buffer_size;
}
- return port_type_info->buffer_scale_factor
+ size = port_type_info->buffer_scale_factor
* sizeof(jack_default_audio_sample_t)
* nframes;
+
+#ifdef USE_DYNSIMD
+ /* Round up to the next multiple of 16 bytes, align buffers for SIMD. */
+ size = (size + 15) & (~ (size_t)0x0f);
+#endif /* USE_DYNSIMD */
+
+ return size;
}
int