summaryrefslogtreecommitdiffstats
path: root/tools/huawei-audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'tools/huawei-audio.c')
-rw-r--r--tools/huawei-audio.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/huawei-audio.c b/tools/huawei-audio.c
index 084241e5..f24386b1 100644
--- a/tools/huawei-audio.c
+++ b/tools/huawei-audio.c
@@ -55,6 +55,7 @@ struct modem_data {
guint audio_changed_watch;
gboolean has_callmanager;
+ gboolean has_audiosettings;
gboolean is_huawei;
gint audio_users;
guint audio_watch;
@@ -92,6 +93,10 @@ static gboolean audio_receive(GIOChannel *channel,
return TRUE;
wlen = write(modem->dsp_out, buf, rlen);
+ if (wlen < 0) {
+ modem->audio_watch = 0;
+ return FALSE;
+ }
return TRUE;
}
@@ -448,6 +453,8 @@ static void check_interfaces(struct modem_data *modem, DBusMessageIter *iter)
dbus_message_iter_next(&entry);
}
+ modem->has_audiosettings = has_audiosettings;
+
if (modem->has_callmanager == has_callmanager)
return;