Merge commit 'elmarco/bluetooth-fixes'

This commit is contained in:
Lennart Poettering 2009-03-05 12:26:09 +01:00
commit 420ee3f8c7

View file

@ -921,7 +921,7 @@ static int hsp_process_push(struct userdata *u) {
if (l < 0 && errno == EINTR) if (l < 0 && errno == EINTR)
continue; continue;
else { else {
pa_log_error("Failed to read data from SCO socket: %s", ret < 0 ? pa_cstrerror(errno) : "EOF"); pa_log_error("Failed to read data from SCO socket: %s", l < 0 ? pa_cstrerror(errno) : "EOF");
ret = -1; ret = -1;
break; break;
} }
@ -1363,7 +1363,7 @@ static void sco_over_pcm_state_update(struct userdata *u) {
if (PA_SINK_IS_OPENED(pa_sink_get_state(u->hsp.sco_sink)) || if (PA_SINK_IS_OPENED(pa_sink_get_state(u->hsp.sco_sink)) ||
PA_SOURCE_IS_OPENED(pa_source_get_state(u->hsp.sco_source))) { PA_SOURCE_IS_OPENED(pa_source_get_state(u->hsp.sco_source))) {
if (u->service_fd > 0) if (u->service_fd >= 0)
return; return;
pa_log_debug("Resuming SCO over PCM"); pa_log_debug("Resuming SCO over PCM");
@ -1372,7 +1372,7 @@ static void sco_over_pcm_state_update(struct userdata *u) {
} else { } else {
if (u->service_fd <= 0) if (u->service_fd < 0)
return; return;
pa_log_debug("Closing SCO over PCM"); pa_log_debug("Closing SCO over PCM");
@ -1559,6 +1559,7 @@ static int setup_bt(struct userdata *u) {
static int init_profile(struct userdata *u) { static int init_profile(struct userdata *u) {
int r = 0; int r = 0;
pa_assert(u); pa_assert(u);
pa_assert(u->profile != PROFILE_OFF);
if (setup_bt(u) < 0) if (setup_bt(u) < 0)
return -1; return -1;
@ -1688,6 +1689,8 @@ static int card_set_profile(pa_card *c, pa_card_profile *new_profile) {
u->sample_spec = u->requested_sample_spec; u->sample_spec = u->requested_sample_spec;
init_bt(u); init_bt(u);
if (u->profile != PROFILE_OFF)
init_profile(u); init_profile(u);
if (u->sink || u->source) if (u->sink || u->source)
@ -1909,6 +1912,7 @@ int pa__init(pa_module* m) {
if (init_bt(u) < 0) if (init_bt(u) < 0)
goto fail; goto fail;
if (u->profile != PROFILE_OFF)
if (init_profile(u) < 0) if (init_profile(u) < 0)
goto fail; goto fail;
@ -1948,6 +1952,7 @@ int pa__init(pa_module* m) {
/* } */ /* } */
/* } */ /* } */
if (u->sink || u->source)
if (start_thread(u) < 0) if (start_thread(u) < 0)
goto fail; goto fail;