Diff between e37ac863ce7dd700a202f32e2779cf1fe1e867ec and 98f1823b3f48261e0edf5df0d306927e5538cb48

Changed Files

File Additions Deletions Status
src/shared/hfp.c +8 -1 modified

Full Patch

diff --git a/src/shared/hfp.c b/src/shared/hfp.c
index 90e17c7..74ee979 100644
--- a/src/shared/hfp.c
+++ b/src/shared/hfp.c
@@ -778,7 +778,14 @@ bool hfp_gw_send_error(struct hfp_gw *hfp, enum hfp_error error)
 
 	wakeup_writer(hfp);
 
-	hfp->result_pending = false;
+	/*
+	 * There might be already something to read in the ring buffer.
+	 * If so, let's read it.
+	 */
+	if (hfp->result_pending) {
+		hfp->result_pending = false;
+		process_input(hfp);
+	}
 
 	return true;
 }