diff options
| author | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2006-09-28 21:36:48 +0000 | 
|---|---|---|
| committer | Claudio Takahasi <claudio.takahasi@openbossa.org> | 2006-09-28 21:36:48 +0000 | 
| commit | e3dbc939bd096c8604d1480e0994f73f65a39f16 (patch) | |
| tree | 15da543b1e9d120ec8f8c04a72942aa1c8d6002e /src | |
| parent | 9203084c0b92805006c133f82fbc0cbd6b203904 (diff) | |
fixed csrc for partial responses
Diffstat (limited to 'src')
| -rw-r--r-- | src/sdp.c | 12 | 
1 files changed, 11 insertions, 1 deletions
| @@ -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; | 
