From e3dbc939bd096c8604d1480e0994f73f65a39f16 Mon Sep 17 00:00:00 2001 From: Claudio Takahasi Date: Thu, 28 Sep 2006 21:36:48 +0000 Subject: fixed csrc for partial responses --- src/sdp.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'src') diff --git a/src/sdp.c b/src/sdp.c index 7e7698b2..0eeb5a09 100644 --- a/src/sdp.c +++ b/src/sdp.c @@ -3569,7 +3569,17 @@ int sdp_process(sdp_session_t *session) /* first fragment */ rsp_count = sizeof(tsrc) + sizeof(csrc) + csrc * 4; } else { - pdata += 2 * sizeof(uint16_t); /* Ignore TSRC and CSRC */ + /* point to the first csrc */ + uint16_t *pcsrc = (uint16_t *) (t->rsp_concat_buf.data + 2); + + /* FIXME: update the interface later. csrc doesn't need be passed to clients */ + + pdata += sizeof(uint16_t); /* point to csrc */ + + /* the first csrc contains the sum of partial csrc responses */ + *pcsrc += bt_get_unaligned((uint16_t *) pdata); + + pdata += sizeof(uint16_t); /* point to the first handle */ rsp_count = csrc * 4; } status = 0x0000; -- cgit