From 47a2b17d01cc0dceb964df07d17e406726d50d45 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Thu, 15 Jan 2009 20:27:07 +0100 Subject: make proplist inheritance scheme automatic and implicit --- src/pulsecore/protocol-esound.c | 2 -- src/pulsecore/protocol-native.c | 2 -- src/pulsecore/sink-input.c | 3 +++ src/pulsecore/sink.c | 3 +++ src/pulsecore/source-output.c | 3 +++ src/pulsecore/source.c | 3 +++ 6 files changed, 12 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/pulsecore/protocol-esound.c b/src/pulsecore/protocol-esound.c index 97d10df5..b1d39094 100644 --- a/src/pulsecore/protocol-esound.c +++ b/src/pulsecore/protocol-esound.c @@ -422,7 +422,6 @@ static int esd_proto_stream_play(connection *c, esd_proto_t request, const void sdata.module = c->options->module; sdata.client = c->client; sdata.sink = sink; - pa_proplist_update(sdata.proplist, PA_UPDATE_MERGE, c->client->proplist); pa_sink_input_new_data_set_sample_spec(&sdata, &ss); c->sink_input = pa_sink_input_new(c->protocol->core, &sdata, 0); @@ -525,7 +524,6 @@ static int esd_proto_stream_record(connection *c, esd_proto_t request, const voi sdata.module = c->options->module; sdata.client = c->client; sdata.source = source; - pa_proplist_update(sdata.proplist, PA_UPDATE_MERGE, c->client->proplist); pa_source_output_new_data_set_sample_spec(&sdata, &ss); c->source_output = pa_source_output_new(c->protocol->core, &sdata, 0); diff --git a/src/pulsecore/protocol-native.c b/src/pulsecore/protocol-native.c index 21797527..0a070f47 100644 --- a/src/pulsecore/protocol-native.c +++ b/src/pulsecore/protocol-native.c @@ -601,7 +601,6 @@ static record_stream* record_stream_new( pa_source_output_new_data_init(&data); pa_proplist_update(data.proplist, PA_UPDATE_REPLACE, p); - pa_proplist_update(data.proplist, PA_UPDATE_MERGE, c->client->proplist); data.driver = __FILE__; data.module = c->options->module; data.client = c->client; @@ -1001,7 +1000,6 @@ static playback_stream* playback_stream_new( pa_sink_input_new_data_init(&data); pa_proplist_update(data.proplist, PA_UPDATE_REPLACE, p); - pa_proplist_update(data.proplist, PA_UPDATE_MERGE, c->client->proplist); data.driver = __FILE__; data.module = c->options->module; data.client = c->client; diff --git a/src/pulsecore/sink-input.c b/src/pulsecore/sink-input.c index 8cdc9286..8f182667 100644 --- a/src/pulsecore/sink-input.c +++ b/src/pulsecore/sink-input.c @@ -190,6 +190,9 @@ pa_sink_input* pa_sink_input_new( pa_return_null_if_fail(data->resample_method < PA_RESAMPLER_MAX); + if (data->client) + pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->client->proplist); + if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_SINK_INPUT_FIXATE], data) < 0) return NULL; diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index d1d68cdd..2abc848a 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -167,6 +167,9 @@ pa_sink* pa_sink_new( if (!data->muted_is_set) data->muted = FALSE; + if (data->card) + pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->card->proplist); + if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_SINK_FIXATE], data) < 0) { pa_xfree(s); pa_namereg_unregister(core, name); diff --git a/src/pulsecore/source-output.c b/src/pulsecore/source-output.c index e04acf90..e3146564 100644 --- a/src/pulsecore/source-output.c +++ b/src/pulsecore/source-output.c @@ -153,6 +153,9 @@ pa_source_output* pa_source_output_new( pa_return_null_if_fail(data->resample_method < PA_RESAMPLER_MAX); + if (data->client) + pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->client->proplist); + if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_SOURCE_OUTPUT_FIXATE], data) < 0) return NULL; diff --git a/src/pulsecore/source.c b/src/pulsecore/source.c index 676a6b40..57018a2b 100644 --- a/src/pulsecore/source.c +++ b/src/pulsecore/source.c @@ -158,6 +158,9 @@ pa_source* pa_source_new( if (!data->muted_is_set) data->muted = FALSE; + if (data->card) + pa_proplist_update(data->proplist, PA_UPDATE_MERGE, data->card->proplist); + if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_SOURCE_FIXATE], data) < 0) { pa_xfree(s); pa_namereg_unregister(core, name); -- cgit