summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/rilmodem/call-volume.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/drivers/rilmodem/call-volume.c b/drivers/rilmodem/call-volume.c
index bee402a1..788d860c 100644
--- a/drivers/rilmodem/call-volume.c
+++ b/drivers/rilmodem/call-volume.c
@@ -42,7 +42,6 @@
#include "rilmodem.h"
#include "parcel.h"
-#include "grilreply.h"
struct cv_data {
GRil *ril;
@@ -97,14 +96,20 @@ static void probe_mute_cb(struct ril_msg *message, gpointer user_data)
{
struct ofono_call_volume *cv = user_data;
struct cv_data *cvd = ofono_call_volume_get_data(cv);
+ struct parcel rilp;
int muted;
- if (message->error != RIL_E_SUCCESS) {
- ofono_error("Could not retrieve the ril mute state");
+ if (message->error != RIL_E_SUCCESS)
return;
- }
- muted = g_ril_reply_parse_get_mute(cvd->ril, message);
+ g_ril_init_parcel(message, &rilp);
+
+ /* skip length of int[] */
+ parcel_r_int32(&rilp);
+ muted = parcel_r_int32(&rilp);
+
+ g_ril_append_print_buf(cvd->ril, "{%d}", muted);
+ g_ril_print_response(cvd->ril, message);
ofono_call_volume_set_muted(cv, muted);
}