diff options
| author | Lennart Poettering <lennart@poettering.net> | 2009-02-24 11:29:35 +0100 | 
|---|---|---|
| committer | Lennart Poettering <lennart@poettering.net> | 2009-02-24 11:29:35 +0100 | 
| commit | 83148581830f6ed9740a6f82645d76c38e43a600 (patch) | |
| tree | 871f0a36d8ef9844c3e2242e5ca1f2dd878196ab /src/modules/alsa/alsa-sink.c | |
| parent | 03ac71bcad97f013f1fc7b5ec65f642be437d65b (diff) | |
set reserve interface application device name
Diffstat (limited to 'src/modules/alsa/alsa-sink.c')
| -rw-r--r-- | src/modules/alsa/alsa-sink.c | 15 | 
1 files changed, 15 insertions, 0 deletions
diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c index 83fc9e1e..dbd95b63 100644 --- a/src/modules/alsa/alsa-sink.c +++ b/src/modules/alsa/alsa-sink.c @@ -134,6 +134,17 @@ static void reserve_done(struct userdata *u) {      }  } +static void reserve_update(struct userdata *u) { +    const char *description; +    pa_assert(u); + +    if (!u->sink) +        return; + +    if ((description = pa_proplist_gets(u->sink->proplist, PA_PROP_DEVICE_DESCRIPTION))) +        pa_reserve_wrapper_set_application_device_name(u->reserve, description); +} +  static int reserve_init(struct userdata *u, const char *dname) {      char *rname; @@ -153,6 +164,8 @@ static int reserve_init(struct userdata *u, const char *dname) {      if (!(u->reserve))          return -1; +    reserve_update(u); +      pa_assert(!u->reserve_slot);      u->reserve_slot = pa_hook_connect(pa_reserve_wrapper_hook(u->reserve), PA_HOOK_NORMAL, (pa_hook_cb_t) reserve_cb, u); @@ -1684,6 +1697,8 @@ pa_sink *pa_alsa_sink_new(pa_module *m, pa_modargs *ma, const char*driver, pa_ca          pa_log_info("Time scheduling watermark is %0.2fms",                      (double) pa_bytes_to_usec(u->tsched_watermark, &ss) / PA_USEC_PER_MSEC); +    reserve_update(u); +      if (update_sw_params(u) < 0)          goto fail;  | 
