[packages/pulseaudio] fix crash when trying to use ldac or aptx codec; rel 2
atler
atler at pld-linux.org
Fri Jun 17 16:07:03 CEST 2022
commit e805a8949086f9280332e6dbc69eb2a597ee1028
Author: Jan Palus <atler at pld-linux.org>
Date: Fri Jun 17 16:05:46 2022 +0200
fix crash when trying to use ldac or aptx codec; rel 2
gst-ldac-aptx-crash.patch | 39 +++++++++++++++++++++++++++++++++++++++
pulseaudio.spec | 4 +++-
2 files changed, 42 insertions(+), 1 deletion(-)
---
diff --git a/pulseaudio.spec b/pulseaudio.spec
index 9eabfc6..989a4c2 100644
--- a/pulseaudio.spec
+++ b/pulseaudio.spec
@@ -15,7 +15,7 @@ Summary: Modular sound server
Summary(pl.UTF-8): Modularny serwer dźwięku
Name: pulseaudio
Version: 16.0
-Release: 1
+Release: 2
License: GPL v2+ (server and libpulsecore), LGPL v2+ (libpulse)
Group: Libraries
Source0: https://freedesktop.org/software/pulseaudio/releases/%{name}-%{version}.tar.xz
@@ -25,6 +25,7 @@ Source2: %{name}.sysconfig
Source3: %{name}.tmpfiles
Patch0: %{name}-pa-machine-id.patch
Patch1: mate-desktop.patch
+Patch2: gst-ldac-aptx-crash.patch
URL: http://pulseaudio.org/
BuildRequires: alsa-lib-devel >= 1.0.24
BuildRequires: avahi-devel >= 0.6.0
@@ -375,6 +376,7 @@ Dokumentacja API PulseAudio.
%setup -q
%patch0 -p1
%patch1 -p1
+%patch2 -p1
%{__sed} -i -e '1s,#!/usr/bin/env python3,#!%{__python3},' src/utils/qpaeq
diff --git a/gst-ldac-aptx-crash.patch b/gst-ldac-aptx-crash.patch
new file mode 100644
index 0000000..585e4f7
--- /dev/null
+++ b/gst-ldac-aptx-crash.patch
@@ -0,0 +1,39 @@
+From cfbbf27b8394fdc97992528caae12b412b22cf6e Mon Sep 17 00:00:00 2001
+From: Jan Palus <jpalus at fastmail.com>
+Date: Fri, 17 Jun 2022 14:36:36 +0200
+Subject: [PATCH] bluetooth/gst: Correct var type for GST_TYPE_BITMASK
+
+GST_TYPE_BITMASK is 64-bit bit mask while corresponding channel_mask in
+pulseaudio is int therefore usually 32-bit. Switch to uint64_t instead
+to match internal representation in gstreamer.
+
+Fixes pulseaudio crash on ARM 32-bit when pulseaudio is compiled with
+gstreamer and either LDAC or aptX support is available.
+---
+ src/modules/bluetooth/a2dp-codec-gst.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/src/modules/bluetooth/a2dp-codec-gst.c b/src/modules/bluetooth/a2dp-codec-gst.c
+index 8ef74be9c..11839c580 100644
+--- a/src/modules/bluetooth/a2dp-codec-gst.c
++++ b/src/modules/bluetooth/a2dp-codec-gst.c
+@@ -22,6 +22,7 @@
+ #endif
+
+ #include <arpa/inet.h>
++#include <stdint.h>
+
+ #include <pulsecore/log.h>
+ #include <pulsecore/macro.h>
+@@ -82,7 +83,7 @@ fail:
+ static GstCaps *gst_create_caps_from_sample_spec(const pa_sample_spec *ss) {
+ gchar *sample_format;
+ GstCaps *caps;
+- int channel_mask;
++ uint64_t channel_mask;
+
+ switch (ss->format) {
+ case PA_SAMPLE_S16LE:
+--
+2.36.1
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/pulseaudio.git/commitdiff/e805a8949086f9280332e6dbc69eb2a597ee1028
More information about the pld-cvs-commit
mailing list