summaryrefslogtreecommitdiffstats
path: root/src/modules/module-device-manager.c
diff options
context:
space:
mode:
authorColin Guthrie <cguthrie@mandriva.org>2009-10-10 14:19:39 +0100
committerColin Guthrie <cguthrie@mandriva.org>2009-11-11 17:44:27 +0000
commit5382455d5ed04eaf581df0aefcc569e2527754ac (patch)
tree0fed5e5ecd417931ae3cfe934ae8630791e6503d /src/modules/module-device-manager.c
parentaf55f07015ee565fe79c9f7f07fd906aae473df4 (diff)
device-manager: Rather than flagging the device as available, just include the sink/source index with PA_INVALID_INDEX meaning unavailable
Diffstat (limited to 'src/modules/module-device-manager.c')
-rw-r--r--src/modules/module-device-manager.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/modules/module-device-manager.c b/src/modules/module-device-manager.c
index bfcbfeaf..e3158644 100644
--- a/src/modules/module-device-manager.c
+++ b/src/modules/module-device-manager.c
@@ -1033,13 +1033,13 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
if ((e = read_entry(u, name))) {
uint32_t idx;
char *devname;
- pa_bool_t available = FALSE;
+ uint32_t index = PA_INVALID_INDEX;
if ((devname = get_name(name, "sink:"))) {
pa_sink* s;
PA_IDXSET_FOREACH(s, u->core->sinks, idx) {
if (strcmp(s->name, devname) == 0) {
- available = TRUE;
+ index = s->index;
break;
}
}
@@ -1048,7 +1048,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
pa_source* s;
PA_IDXSET_FOREACH(s, u->core->sources, idx) {
if (strcmp(s->name, devname) == 0) {
- available = TRUE;
+ index = s->index;
break;
}
}
@@ -1058,7 +1058,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
pa_tagstruct_puts(reply, name);
pa_tagstruct_puts(reply, e->description);
pa_tagstruct_puts(reply, e->icon);
- pa_tagstruct_put_boolean(reply, available);
+ pa_tagstruct_putu32(reply, index);
pa_tagstruct_putu32(reply, NUM_ROLES);
for (uint32_t i = ROLE_NONE; i < NUM_ROLES; ++i) {