diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/modules/alsa/alsa-sink.c | 3 | ||||
| -rw-r--r-- | src/modules/alsa/alsa-source.c | 3 | ||||
| -rw-r--r-- | src/modules/alsa/module-alsa-card.c | 5 | 
3 files changed, 9 insertions, 2 deletions
| diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c index c8e12f9c..bfe4f3bc 100644 --- a/src/modules/alsa/alsa-sink.c +++ b/src/modules/alsa/alsa-sink.c @@ -164,6 +164,9 @@ static int reserve_init(struct userdata *u, const char *dname) {      if (u->reserve)          return 0; +    if (pa_in_system_mode()) +        return 0; +      /* We are resuming, try to lock the device */      if (!(rname = pa_alsa_get_reserve_name(dname)))          return 0; diff --git a/src/modules/alsa/alsa-source.c b/src/modules/alsa/alsa-source.c index ed9388ec..04cb2621 100644 --- a/src/modules/alsa/alsa-source.c +++ b/src/modules/alsa/alsa-source.c @@ -162,6 +162,9 @@ static int reserve_init(struct userdata *u, const char *dname) {      if (u->reserve)          return 0; +    if (pa_in_system_mode()) +        return 0; +      /* We are resuming, try to lock the device */      if (!(rname = pa_alsa_get_reserve_name(dname)))          return 0; diff --git a/src/modules/alsa/module-alsa-card.c b/src/modules/alsa/module-alsa-card.c index 22f0ae0a..d5e2cdc2 100644 --- a/src/modules/alsa/module-alsa-card.c +++ b/src/modules/alsa/module-alsa-card.c @@ -310,8 +310,9 @@ int pa__init(pa_module *m) {      pa_snprintf(rname, sizeof(rname), "Audio%i", alsa_card_index); -    if (!(reserve = pa_reserve_wrapper_get(m->core, rname))) -        goto fail; +    if (!pa_in_system_mode()) +        if (!(reserve = pa_reserve_wrapper_get(m->core, rname))) +            goto fail;      pa_card_new_data_init(&data);      data.driver = __FILE__; | 
