Go to file
Bastien Nocera 25bf3ed75f gvc-mixer-control: Really fix double-free when setting headset
In a28e23d900, we said:
The callbacks will be called repeatedly, once with data, and later
on with eol == 0. Make sure to only free it when we get the eol call
instead of once we've applied the settings.

Whereas the docs say:
When requesting all of these [instances] at once, the callback will be
called multiple times, once for each object. When the list has been
exhausted, the callback will be called without an information structure
and the eol parameter set to a positive value.

If an error occurs, the callback will be invoked without an information
structure and eol set to a negative value.

So, in all, we need to free our callback data when eol is positive, or
negative. So, when it's not 0.

Seems we got lucky in the original commit because the test machine only
had a single soundcard.
2016-04-17 22:27:47 +02:00
tests-include tests: Add a Makefile for tests 2016-04-17 20:49:55 +02:00
.gitignore tests: Add a Makefile for tests 2016-04-17 20:49:55 +02:00
gvc-channel-map-private.h Initial import 2012-10-19 20:00:25 +02:00
gvc-channel-map.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-channel-map.h Initial import 2012-10-19 20:00:25 +02:00
gvc-mixer-card-private.h Initial import 2012-10-19 20:00:25 +02:00
gvc-mixer-card.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-mixer-card.h Add a GIcon accessor for GvcMixerUIDevices 2013-02-18 14:39:54 +01:00
gvc-mixer-control-private.h Initial import 2012-10-19 20:00:25 +02:00
gvc-mixer-control.c gvc-mixer-control: Really fix double-free when setting headset 2016-04-17 22:27:47 +02:00
gvc-mixer-control.h gvc: Add "what did you plug in" support API 2016-01-17 18:34:07 -02:00
gvc-mixer-event-role.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-mixer-event-role.h Initial import 2012-10-19 20:00:25 +02:00
gvc-mixer-sink-input.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-mixer-sink-input.h Fix introspection support 2012-10-19 20:00:47 +02:00
gvc-mixer-sink.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-mixer-sink.h Fix introspection support 2012-10-19 20:00:47 +02:00
gvc-mixer-source-output.c gvc-mixer-source-output: Update volume and mute status 2016-01-12 01:31:56 +01:00
gvc-mixer-source-output.h Fix introspection support 2012-10-19 20:00:47 +02:00
gvc-mixer-source.c remove unneeded *_class_init and *_init declarations 2015-09-09 14:13:00 +03:00
gvc-mixer-source.h Fix introspection support 2012-10-19 20:00:47 +02:00
gvc-mixer-stream-private.h Initial import 2012-10-19 20:00:25 +02:00
gvc-mixer-stream.c gvc-mixer-stream: make card-index unsigned int 2015-09-15 15:35:26 +03:00
gvc-mixer-stream.h gvc-mixer-stream: make card-index unsigned int 2015-09-15 15:35:26 +03:00
gvc-mixer-ui-device.c gvc-mixer-ui-device: make stream-id unsigned int 2015-09-09 14:14:15 +03:00
gvc-mixer-ui-device.h gvc-mixer-ui-device: make stream-id unsigned int 2015-09-09 14:14:15 +03:00
gvc-pulseaudio-fake.h Initial import 2012-10-19 20:00:25 +02:00
libgnome-volume-control.doap <name> should match repository's name. 2013-08-21 00:40:05 +02:00
Makefile.am build: Include .typelib in CLEANFILES 2012-12-18 16:26:28 +01:00
Makefile.tests tests: Add audio device selection question 2016-04-17 22:27:26 +02:00
test-audio-device-selection.c tests: Add audio device selection question 2016-04-17 22:27:26 +02:00