~muktupavels/libgnome-volume-control/+git/libgnome-volume-control:do-not-deref-null-pointer

Last commit made on 2021-01-05
Get this branch:
git clone -b do-not-deref-null-pointer https://git.launchpad.net/~muktupavels/libgnome-volume-control/+git/libgnome-volume-control

Branch merges

Branch information

Name:
do-not-deref-null-pointer
Repository:
lp:~muktupavels/libgnome-volume-control/+git/libgnome-volume-control

Recent commits

1949be7... by =?utf-8?b?S2FpIEzDvGtl?= <email address hidden>

gvc-mixer-ui-device: Do not deref NULL pointer

7a62118... by Jaroslav Kysela <email address hidden>

mixer-control: do not use port name string to select the headset ports

It is a bad idea to use the variable port name to check the port
type. Use only the new port type and availability group string
for the decision.

Also, select the ports by priority, if there multiple ports
with the similar type.

960e01d... by Hui Wang

mixer-control: consolidate port finding and setting with/without ucm

Recently Intel added a new audio driver in the Linux kernel, it is
called sof driver. This driver is needed on the laptops which
connects the digital mic to the PCH instead of the codec. To make the
sof driver work with pulseaudio, the ucm is mandatory.

With the ucm, the multi-function audio jack has different port names
in the pulseaudio from the one without ucm, these are the port names
with the ucm:
[In] Mic1: Digital Microphone
[In] Mic2: Headphones Stereo Microphone
[In] Headset: Headset Mono Microphone
[Out] Headphones: Headphones
[Out] Speaker: Speaker

To make the audio device selection work on the machines using the ucm,
the pulseaudio introduces a change to add 2 new members in the device
port structure from the PA_PROTOCOL_VERSION=34, with these 2 members'
help, we could consolidate the port finding and setting for both with
ucm and without ucm.

And this patch maintains the backward compatibility with the
PA_PROTOCOL_VERSION < 34.

0aab80a... by Alberts Muktupāvels

mixer-control: fix -Wsign-compare warnings

headset_card type is changed from int to guint32 to match uint32_t
used in PulseAudio's pa_card_info struct.

1598085... by Alberts Muktupāvels

test-audio-device-selection: fix -Wdiscarded-qualifiers warnings

d8ba41f... by Alberts Muktupāvels

test-audio-device-selection: fix -Wsign-compare warning

342e366... by Alberts Muktupāvels

mixer-control: fix -Wswitch-enum warnings

Warnings introduced in ec5cf3e0de6715803e64b65abb059e2155b3d6de:
gvc-mixer-control.c:1457:9: warning: enumeration value ‘PA_SINK_INIT’ not handled in switch [-Wswitch-enum]
gvc-mixer-control.c:1457:9: warning: enumeration value ‘PA_SINK_UNLINKED’ not handled in switch [-Wswitch-enum]

Warning building with alsa:
gvc-mixer-control.c:2218:9: warning: enumeration value ‘GVC_HEADSET_PORT_CHOICE_NONE’ not handled in switch [-Wswitch-enum]

02cab4d... by Alberts Muktupāvels

build: ignore .dirstamp file

e2be83e... by Carlos Garnacho

build: Bump pulseaudio dependency

We need 12.99.3 in order to avoid deadlocks on Xwayland startup, see
https://gitlab.freedesktop.org/pulseaudio/pulseaudio/-/commit/79a8efb45cb8304967baa2e8c6d6156478ce19d9

Closes: https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2599

ec5cf3e... by =?utf-8?q?Florian_M=C3=BCllner?= <email address hidden>

mixer-control: Expose stream state

The state can be used to determine whether audio is currently playing
or not, which can be useful information.

https://gitlab.gnome.org/GNOME/libgnome-volume-control/merge_requests/8