From 65f89dca7ce1a7c65e78d452437eae6c9466d763 Mon Sep 17 00:00:00 2001 From: Colin Guthrie <cguthrie@mandriva.org> Date: Sat, 8 May 2010 13:47:19 +0100 Subject: [PATCH 170/170] rtp: Fix bracketing in pa_rtp_recv. The syntactically correct error meant that the timestamp was always marked as found and only the first header was checked. In the case where the timestamp was the first header, things would have worked as expected. Thanks to pino for reporting via bug refs #818 --- src/modules/rtp/rtp.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/modules/rtp/rtp.c b/src/modules/rtp/rtp.c index 6706a10..74f0ac3 100644 --- a/src/modules/rtp/rtp.c +++ b/src/modules/rtp/rtp.c @@ -278,8 +278,8 @@ int pa_rtp_recv(pa_rtp_context *c, pa_memchunk *chunk, pa_mempool *pool, struct pa_memchunk_reset(&c->memchunk); } - for (cm = CMSG_FIRSTHDR(&m); cm; cm = CMSG_NXTHDR(&m, cm)) { - if (cm->cmsg_level == SOL_SOCKET && cm->cmsg_type == SO_TIMESTAMP) + for (cm = CMSG_FIRSTHDR(&m); cm; cm = CMSG_NXTHDR(&m, cm)) + if (cm->cmsg_level == SOL_SOCKET && cm->cmsg_type == SO_TIMESTAMP) { memcpy(tstamp, CMSG_DATA(cm), sizeof(struct timeval)); found_tstamp = TRUE; break; -- 1.7.1